आप प्रतिबिंब के माध्यम से ऐसा कर सकते हैं। अनिवार्य रूप से, आप अपने DataContext कक्षा में गुणों पर पुन: प्रयास करते हैं। प्रत्येक प्रॉपर्टी के लिए, यह देखने के लिए जांचें कि क्या उस प्रॉपर्टी के सामान्य पैरामीटर प्रकार में TableAttribute विशेषता है। यदि ऐसा है, तो वह संपत्ति एक तालिका का प्रतिनिधित्व करती है:
using System.Reflection;
using System.Data.Linq.Mappings;
PropertyInfo[] properties = typeof(MyDataContext).GetProperties();
foreach (PropertyInfo property in properties)
{
if(property.PropertyType.IsGenericType)
{
object[] attribs = property.PropertyType.GetGenericArguments()[0].GetCustomAttributes(typeof(TableAttribute), false);
if(attribs.Length > 0)
{
Console.WriteLine(property.Name);
}
}
}
स्रोत
2009-04-09 23:04:42
अच्छा, मुझे इसके बारे में पता नहीं था। –
हू हू जो भी बेहतर है! – Sergey
हाँ, मैं अपने जैसे सामान ढूंढ रहा हूं। एक को पास करने के लिए हमेशा मजेदार है :)। –