Я задавался вопросом, существует ли способ создать дополнительные методы с помощью Visual Studio 2005 и 2,0 платформы?
public static class StringExtensions
{
public static void SomeExtension(this String targetString)
{
}
}
Если бы нет никакого способа сделать это, каков эквивалент был бы? Просто создайте статические методы в своего рода классе библиотеки?
Вы можете создавать методы расширения, используя .Net framework 2.0, если вы используете компилятор C # 3.0 и Visual Studio 2008 или новее.
Загвоздка в том, что вам нужно добавить этот код в свой проект:
namespace System.Runtime.CompilerServices
{
public class ExtensionAttribute : Attribute { }
}
В основном вам нужно повторно объявить ExtensionAttribute в Core.dll (.Net 3.5 +) в вашем проекте.
Я думаю, что на ваш вопрос отвечает следующее:
-121--1512121-6,3,1,3 Подписанные и неподписанные целые числа
1 Когда значение с целым типом преобразован в другой целочисленный тип кроме _Bool, если значение может быть представленный новым типом, он без изменений.
2 В противном случае, если новый тип не подписан, значение равно преобразованы путем многократного добавления или вычитание на единицу больше максимального значение, которое может быть представлено в новый тип, пока значение не будет в диапазона нового типа.
3 В противном случае новый тип подписан, и значение не может быть представлен в нем; также результат определен для реализации или определяемый реализацией сигнал поднял.
Это в основном вопрос мнения, но в любом случае:
* _ name
и * _ link
я бы предложил использовать соответствующие объекты в любом случае с некоторыми функциональными возможностями link _ to
. Вы можете найти Эпизод 162 из Railscasts представляет интерес для хорошего решения, которое получает с
<% for page in @page.ancestors.reverse %>
<%= link_to h(page.name), page %> >
<% end %>
-121--2293355- Нет, это невозможно в .Net 2.0 (без использования компилятора C # 3.0). Вы можете просто создать статические методы, которые делают точно то же самое, однако:
public static class StringExtensions
{
public static void SomeExtension(String targetString)
{
// Do things
}
}
// Example use:
StringExtensions.SomeExtension(targetString);
В реальности методы расширения являются просто кратким способом написания выше.