List をメソッドに渡していますが、このリストの実際の名前を返す最も簡単な方法を考えていました。私はこのようなことを達成しようとしています。
static List<string> GatherDataPerProduct(List<Pandora.Data.DomainObject> lstdata)
{
if(lstData.value == "subjects")
{
//do whatever
}
これを試して:
using Extensions;
namespace ConsoleApplication
{
class Program
{
static void Main(string[] args)
{
var subjects = default(List<Pandora.Data.DomainObject>);
var result = Helper<List<Pandora.Data.DomainObject>>.ExampleFunction(() => subjects);
}
}
}
namespace Extensions
{
static class Helper<T>
{
public static List<string> ExampleFunction(Expression<Func<T>> f)
{
if ((f.Body as MemberExpression).Member.Name == "subjects")
{
return new List<String>();
}
return null;
}
}
}
元のソリューションはhereです。