-7

List をメソッドに渡していますが、このリストの実際の名前を返す最も簡単な方法を考えていました。私はこのようなことを達成しようとしています。

static List<string> GatherDataPerProduct(List<Pandora.Data.DomainObject> lstdata)
{
    if(lstData.value == "subjects")
    {
      //do whatever
    }
4

3 に答える 3

1

これを試して:

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です。

于 2013-05-16T09:22:42.333 に答える