- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
public static int not(this int i)
{
string i2 = Convert.ToString(i, 2),
res = "";
foreach (char c in i2)
res += c == '0' ? '1' : '0';
return Convert.ToInt32(res, 2);
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+127.8
public static int not(this int i)
{
string i2 = Convert.ToString(i, 2),
res = "";
foreach (char c in i2)
res += c == '0' ? '1' : '0';
return Convert.ToInt32(res, 2);
}
Дело было вечером, делать было нечего....
+103
MessageBox.Show(
a.Decode(
new StringBuilder(
a.Encode(
new StringBuilder(
textBox1.Text)).ToString())).ToString());
Говнокод... ну почти говнокод. Думаю, замечание.
+96.1
[TestFixture]
class Program
{
static void Main(string[] args)
{
.................
}
}
[TestFixture]
internal class FileParser
{
[Test]
private static string Replace(string inputValue, string oldWord,string newWord)
{
return inputValue.Replace(oldWord, newWord);
}
[Test]
private static string Remove(string inputValue, string word)
{
return inputValue.Replace(word, null);
}
[Test]
public string Run(string stringFromFile)
{
foreach (var command in _listOfCommands)
{
switch (command.IdCommand)
{
case 0:
stringFromFile = Replace(stringFromFile, command.OldWord, command.NewWord);
break;
case 1:
stringFromFile = Remove(stringFromFile, command.NewWord);
break;
}
}
return stringFromFile;
}
}
программист слишком буквально понял TestDrivenDevelopment :)) взято из консольного приложения
+139.4
var viewsId = new List<int>(views.Select(v => v.ViewId).Distinct());
var sviewsId = "," + String.Join(",", viewsId.Select(i => i.ToString()).ToArray()) + ",";
_total = (from d in context.TableA
join uvd in context.TableB on d.DocID equals uvd.DocID
join uv in context.TableC on uvd.ID equals uv.ID
where sviewsId.IndexOf("," + uv.ID.ToString() + ",") > 0
select d.DocID)
.Distinct ()
.Count ();
Оригинальный способ обойти ограничение на 2100 параметров. А как быстро оно будет работать!
views, разумеется, из того же контекста.
+99.7
foreach (char c in customField.CustomFieldId.ToLower()
.Replace("CustomField".ToLower(), String.Empty))
{
if (c < '0' || c > '9') fieldName += c;
}
Догадайтесь что он делает
+135.7
private void Form1_Load(object sender, EventArgs e)
{
List<defaultItem> EqQty = new List<defaultItem>();
EqQty.Add(new defaultItem(1, 1.ToString()));
EqQty.Add(new defaultItem(2, 2.ToString()));
EqQty.Add(new defaultItem(3, 3.ToString()));
EqQty.Add(new defaultItem(4, 4.ToString()));
EqQty.Add(new defaultItem(5, 5.ToString()));
cbEqQty.DataSource = EqQty;
cbEqQty.ValueMember = "Key";
cbEqQty.DisplayMember = "Value";
List<defaultItem> PlusQty = new List<defaultItem>();
PlusQty.Add(new defaultItem(1, 1.ToString()));
PlusQty.Add(new defaultItem(2, 2.ToString()));
PlusQty.Add(new defaultItem(3, 3.ToString()));
PlusQty.Add(new defaultItem(4, 4.ToString()));
PlusQty.Add(new defaultItem(5, 5.ToString()));
cbPlusQty.DataSource = PlusQty;
cbPlusQty.ValueMember = "Key";
cbPlusQty.DisplayMember = "Value";
}
public class defaultItem
{
public int Key { get; set; }
public String Value { get; set; }
/// <summary>
/// Коснтруктор
/// </summary>
/// <param name="Key"></param>
/// <param name="Value"></param>
public defaultItem
(
int Key,
String Value
)
{
this.Key = Key;
this.Value = Value;
}
}
Надо было два дропдауна при загрузке формы заполнить))
+100.5
if (Files[i].NeedCompression)
{
CompressFile(Files[i], Files[i].FileNameWithPath);
}
else
{
CompressFile(Files[i], Files[i].FileNameWithPath);
}
Если файл нужно сжать, сжимаем, или сжимаем :D
ps:// 3 года назад писал подобие архиватора, за компрессию отвечала библиотека zlib.net
+135
private string GetDefaultPolicyNameFromRegistry()
{
string registryControlCenterKeyName;
RegistryKey key;
try
{
if (System.Runtime.InteropServices.Marshal.SizeOf(typeof(IntPtr)) == 8)
registryControlCenterKeyName = "SOFTWARE\\Wow6432Node\\xxx\\ControlCenter\\";
else
registryControlCenterKeyName = "SOFTWARE\\xxx\\ControlCenter\\";
key = Registry.LocalMachine.OpenSubKey(registryControlCenterKeyName); ;
}
catch (Exception ex)
{
throw new ArgumentException("Registry open 'ControlCenter' key error: " + ex.Message);
}
return (string)key.GetValue("DefaultPolicy");
}
Замечательно проверили на возможность исключений в ветке реестра с помощью try catch.. И также замечательно вынесли получение нужного значения из try catch
Как результат - после обновления не открываются две страницы, на которых можно было бы создать, просмотреть и етк нужное значение в реестре. Нормальная работа приложения гарантировано заблокирована.
Проверка битности системы тоже хорошая)
+126.1
switch (dType) {
case "2":
return Title + "(" + dTitle + ")";
break;
case "3":
return Title + " за " + dDate.ToString("d");
break;
default: return Title;
break;
}
Чтобы уж наверняка :)
+96.3
public class zTimer
{
object SomeTag;
int StartTime;
int TimeOut;
public int Start(int Value, object tag)
{
SomeTag = tag;
TimeOut = Value;
StartTime = MakeLngTime(DateTime.Now);
return StartTime;
}
public int MakeLngTime(DateTime Tm)
{
return ((Tm.Day * 24 + Tm.Hour) * 60 + Tm.Minute) * 60 + Tm.Second;
}
public bool IsTimeOut(object tag)
{
if (tag != null && SomeTag != null)
{
if (tag == SomeTag)
{
if (MakeLngTime(DateTime.Now) > StartTime + TimeOut)
{
return true;
}
else
{
return false;
}
}
else
{
StartTime = MakeLngTime(DateTime.Now);
SomeTag = tag;
return false;
}
}
else
{
if (MakeLngTime(DateTime.Now) > StartTime + TimeOut)
{
return true;
}
else
{
return false;
}
}
}
}
Могучий таймер. Особое внимание стоит уделить методу MakeLngTime.