- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
int tries = 0;
while (true)
{
try
{
DoSomething();
}
catch
{
if (++tries > 3)
throw;
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+5
int tries = 0;
while (true)
{
try
{
DoSomething();
}
catch
{
if (++tries > 3)
throw;
}
}
Оригинальный способ попытаться выполнить некий код, давая ему на это N попыток , а только потом упасть с ошибкой.
−2
[HttpPost]
[Route("api/Pateikimai/SaveList")]
public OperacijosRezultatas SaveList(List<PateikimasEditItem> models)
{
var atsakymas = new OperacijosRezultatas();
int failCounter = 0;
foreach (var model in models) {
try {
PateikimaiBll.SaveOrUpdate(model);
}
catch (Exception ex) {
failCounter++;
}
}
if (failCounter > 0)
{
atsakymas.SekmingaOperacija = false;
atsakymas.PridetiKlaida("Ne visi įrašai buvo išsaugoti");
}
else {
atsakymas.PridetiSekme("Pateikimų įrašas sėkmingai išsaugotas");
}
return atsakymas;
}
Смесь литовского с английским. Try/catch, который не записывает в лог и юзается для того, чтобы в front-end'e не запариватся с масивами (повторяющееся элементы). Уже не говорю об отсутсвии транзакций и foreach'e в контроллере.
−1
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
if(Checksquare()){
Cut(_point(x, y), true);
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
Здесь уместно вспомнить пословицу "Семь раз отмерь,(в данном случае 32 раза) один раз отрежь"
−3
_sock = new Socket(SocketType.Stream, ProtocolType.Tcp);
var saea = new SocketAsyncEventArgs {RemoteEndPoint = new IPEndPoint(0x0100007f, 1338)};
var mre = new ManualResetEventSlim(false);
saea.Completed += (o, e2) => mre.Set();
_sock.ConnectAsync(saea);
mre.Wait();
mre.Reset();
var idBuf = new byte[8];
var idSeg = new ArraySegment<byte>(idBuf);
saea = new SocketAsyncEventArgs { BufferList = new[] { idSeg } };
saea.Completed += (o, e2) => mre.Set();
_sock.ReceiveAsync(saea);
mre.Wait();
Task.Run((Action) ReceivingLoop);
mre.Dispose();
Блядские сокеты в UWP. Майки лучше не смогли ничего придумать, как добавлять в язык с нормальной асинхронностью сокеты на КОЛЛБЕКАХ блять. В 2016. Коллбеки. Да они там ебанулись к хуям
+6
public string GetRegion(CallContext context)
{
return "Регион";
}
+6
using System;
namespace Colculator
{
public partial class Form1 : Form
{
bool BOOL = {
true,true,true,true,true,true,true,false};
if(BOOL(new Random(1,8)){
Consosle.WriteLine("ДА");
}
Так делать нельзя!!!
+1
if ( text.Contains( "лет" ) || text.Contains( "год" ) )
{
var match = Regex.Match( text, @"\d+", RegexOptions.Singleline );
if ( !match.Success )
return null;
var date = DateTime.UtcNow;
return date.AddYears( -Int32.Parse( match.Value ) );
}
else if ( text.Contains( "дн" ) || text.Contains( "ден" ) )
{
var match = Regex.Match( text, @"\d+", RegexOptions.Singleline );
if ( !match.Success )
return null;
var date = DateTime.UtcNow;
return date.AddDays( -Int32.Parse( match.Value ) );
}
else if ( text.Contains( "месяц" ) )
{
var match = Regex.Match( text, @"\d+", RegexOptions.Singleline );
if ( !match.Success )
return null;
var date = DateTime.UtcNow;
return date.AddMonths( -Int32.Parse( match.Value ) );
}
else if ( text.Contains( "час" ) )
{
var match = Regex.Match( text, @"\d+", RegexOptions.Singleline );
if ( !match.Success )
return null;
var date = DateTime.UtcNow;
return date.AddHours( -Int32.Parse( match.Value ) );
}
else if ( text.Contains( "недел" ) )
{
var match = Regex.Match( text, @"\d+", RegexOptions.Singleline );
if ( !match.Success )
return null;
var date = DateTime.UtcNow;
return date.AddHours( ( -Int32.Parse( match.Value ) ) * 7 );
}
else if ( text.Contains( "минут" ) )
{
var match = Regex.Match( text, @"\d+", RegexOptions.Singleline );
if ( !match.Success )
return null;
var date = DateTime.UtcNow;
return date.AddMinutes( -Int32.Parse( match.Value ) );
}
return null;
Копипаста >_< До кучи ещё и с классической copy-paste ошибкой в логике.
−1
if (p != null)
{
Thread thread = new Thread(() =>
{
StaffList.App.Controls.Personal.PersonRec rec = new Controls.Personal.PersonRec();
rec.DataContext = p;
rec.Mode = StaffList.Controls.OperatingMode.Show;
var win = new BaseWindow();
win.Form = rec;
win.ShowDialog();
});
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
}
Это мы так делаем немодальные окна.
+10
public static string toFormat(string s, int u)
{
return " ".Substring(0, u * 4) + s +"\r\n";
}
Функция используется для форматирования файла класса, созданного автоматически.
+2
if (t.IsFaulted)
{
try
{
throw t.Exception.InnerException;
}
catch (ObjectDisposedException)
{
Dispose();
return;
}
...
}