how to get value of a definite Column name in c# / Linq?

后端 未结 3 1394
后悔当初
后悔当初 2020-12-20 05:23

I want to know if it possible to get value of a definite columns name ? For exemple SELECT NAME FROM PERSON;

string NAME; <--- Column name
st         


        
相关标签:
3条回答
  • 2020-12-20 05:56

    Your question is a bit misleading.. Are you after a collection of names, like what you would get from running the SQL "SELECT Name FROM Person"?

    If so, using Linq-to-sql syntax:

    var people = from p in context.PERSON select a.NAME;
    

    If you're trying to find a specific person, based on the NAME string?

    string name = "barry";
    var person = from p in context.PERSON select a where a.NAME.Contains(name);
    
    0 讨论(0)
  • 2020-12-20 06:05

    You want to the source code in C# to create a linq query that compiles to SELECT NAME FROM PERSON under Linq to SQL or Linq to Entity Framework?

    IEnumerable<string> names = from x in context.PERSONS
                                select x.Name;
    

    OR

    IEnumerable<string> names = context.PERSONS.Select(x => x.Name);
    

    In Monad parlance you want a projection onto the Name property.

    EDIT : You want to dynamically state which column?

    string columnName = "Name";
    ParameterExpression personExpression = Expression.Parameter(typeof(Person), "p");
    Expression<Func<Person, string>> column = Expression.Lambda<Func<Person, string>>(Expression.PropertyOrField(personExpression, columnName), personExpression);
    
    IEnumerable<string> things = context.PERSONS.Select(column);
    
    0 讨论(0)
  • 2020-12-20 06:06

    try this

    fundPerson = context.PERSON.Where(a=>a... == NAME).Select(a=>a.NAME).SingleOrDefault();
    
    0 讨论(0)
提交回复
热议问题