Пусть есть класс Category со свойством ID, у которого есть метод GetChildCategories.
Ты имеете ввиду, что лучше сделать статический метод GetChaildCategoriesByID(int id) у класса Category, чем простой метод GetChildCategories(), который будет использовать ID категории, для которой этот метод вызывается, я правильно понял?
Не совсем, Xml — это всего лишь метаязык для описания других языков, а Html и Xaml — это уже конкретные языки (То есть конкретная реализация Xml с определённым набором тегов)
Если уж на то пошло, то Html является реализацией не Xml, а Sgml, а сам Xml является подмножеством Sgml.
исправляюсь:
Было:
public Category Get(ArrayList array, int id)
{
Category result;
foreach(object o in array)
{
result = o as Category;
if(result.ID == id) break;
}
return result;
}
Стало:
public Category Get(ArrayList array, int id)
{
foreach(object o in array)
{
Category result = o as Category;
if(result.ID == id) return result;
}
return null;
}
Вынужден не согласиться, break действительно запутывает.
Не так давно у нас в движке я нашёл глупую ошибку. Дело было как раз с поиском в массиве.
Вот как примерно это было сделано:
public Category Get(ArrayList array, int id)
{
Category result;
foreach(object o in array)
{
result = array as Category;
if(result.ID == id) break;
}
return result;
}
И ведь даже не позаботились подумать, что будет, если ничего не найдётся. А будет то, что вернётся последний элемент.
Намного понятнее смотрится.
public Category Get(ArrayList array, int id)
{
foreach(object o in array)
{
if((array as Category).ID == id) return result;
}
return null;
}
Просто нельзя так сразу говорить, что это вот такое правило и всё тут, следовать нужно этому правилу.
Главное знать что делать.
Вот сейчас вставил System.Diagnostics.Debugger.Break() в класс провайдера (который в статье), просто появилось сообщение, что «Visual Studio 2008 обнаружила точку останова» и потом студию пришлось перезагрузить.
Хех… Не лазил много по этому пространству имён, поэтому плохо с ним знаком.
Мне кажется всё равно это ничего не даст, но, всё же, напишите как этим пользоваться, я попробую.
Сайт компилируется в любом случае. Разница в том, что обычный сайт компилируется по мере надобности, те заменили (или изменили) вы файл default.aspx, то перекомпилируется только то, что связано с этим файлом. Это динамическая компиляция.
Напротив в проектах Web Application сайт компилируется один раз в одну сборку и при изменении одного файла нужно перекомпилировать весь сайт.
Ты имеете ввиду, что лучше сделать статический метод GetChaildCategoriesByID(int id) у класса Category, чем простой метод GetChildCategories(), который будет использовать ID категории, для которой этот метод вызывается, я правильно понял?
Если уж на то пошло, то Html является реализацией не Xml, а Sgml, а сам Xml является подмножеством Sgml.
Было:
public Category Get(ArrayList array, int id)
{
Category result;
foreach(object o in array)
{
result = o as Category;
if(result.ID == id) break;
}
return result;
}
Стало:
public Category Get(ArrayList array, int id)
{
foreach(object o in array)
{
Category result = o as Category;
if(result.ID == id) return result;
}
return null;
}
Не так давно у нас в движке я нашёл глупую ошибку. Дело было как раз с поиском в массиве.
Вот как примерно это было сделано:
public Category Get(ArrayList array, int id)
{
Category result;
foreach(object o in array)
{
result = array as Category;
if(result.ID == id) break;
}
return result;
}
И ведь даже не позаботились подумать, что будет, если ничего не найдётся. А будет то, что вернётся последний элемент.
Намного понятнее смотрится.
public Category Get(ArrayList array, int id)
{
foreach(object o in array)
{
if((array as Category).ID == id) return result;
}
return null;
}
Просто нельзя так сразу говорить, что это вот такое правило и всё тут, следовать нужно этому правилу.
Главное знать что делать.
Камень [V] [X]
Не iPhone [V] [Х]
Не iPhone [V] [Х]
Но всё равно достаточно интересно.
Нигде.
Мне кажется всё равно это ничего не даст, но, всё же, напишите как этим пользоваться, я попробую.
Напротив в проектах Web Application сайт компилируется один раз в одну сборку и при изменении одного файла нужно перекомпилировать весь сайт.