Имам кода по-долу, който използвам, за да се опитам да приложа персонализирани атрибути към полета в деклариран клас. Получавам грешката по-долу срещу думите „FileType“ и „AllowNulls“ в декларацията (отбелязана по-долу)
Грешка 3 „FieldType“ не е валиден наименуван аргумент на атрибут. Аргументите на именувания атрибут трябва да бъдат полета, които не са само за четене, статични или const, или свойства за четене и запис, които са публични, а не статични. F:\Dropbox\Dev_LN Projects\02 Scrap\TestFieldAttributes\TestFieldAttributes\Program.cs 61 34 TestFieldAttributes
Опитах различни комбинации от премахване на статично, само за четене и т.н., но без успех. някакви мисли? Благодаря
[AttributeUsage(AttributeTargets.Field)]
public class DBDataTypeAttribute : System.Attribute
{
private string fieldtype;
public string FieldType
{
get { return fieldtype; }
}
private string allownulls;
public string AllowNulls
{
get { return allownulls; }
}
}
public class ExpenseReport
{
[FieldQuoted('"', QuoteMode.OptionalForRead, MultilineMode.AllowForRead)]
[DBDataTypeAttribute(FieldType = "varchar(1000)", AllowNulls = "true")]// errors on this line
public String UniqueID;
[FieldQuoted('"', QuoteMode.OptionalForRead, MultilineMode.AllowForRead)]
public String ERNum;
}
Благодаря!