1
我試圖簡化從屬性提取數據的代碼。屬性內容extracion
屬性:
[AttributeUsage(AttributeTargets.Property)]
class NameAttribute : Attribute
{
public string Name { get; }
public ColumnAttribute(string name)
{
Name = name;
}
}
屬性內容提取碼(空檢查刪除):
public static string GetName<T>(string propName)
{
var propertyInfo = typeof(T).GetProperty(propName);
var nameAttribute = (NameAttribute)propertyInfo.GetCustomAttributes(typeof(NameAttribute)).FirstOrDefault();
return nameAttribute.Name;
}
Sample類:
class TestClass
{
[Column("SomeName")]
public object NamedProperty { get; set; }
}
呼叫樣品:
var name = GetName<TestClass>(nameof(TestClass.NamedProperty))
重寫屬性內容提取方法來簡化/縮短它的調用有什麼方法嗎?由於它的長度,對我來說太不方便了。
就像CallerMemberNameAttribute會很棒,但我什麼也沒找到。
這看起來不錯,我 – Backs
我查看fow的方式將其插入到字符串中,每個字符串2..5個調用,但當前調用語法對於它來說太長 –