Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用带有特定后缀的LINQ(EF)从表中获取名称_C#_Asp.net Mvc_Entity Framework_Linq - Fatal编程技术网

C# 使用带有特定后缀的LINQ(EF)从表中获取名称

C# 使用带有特定后缀的LINQ(EF)从表中获取名称,c#,asp.net-mvc,entity-framework,linq,C#,Asp.net Mvc,Entity Framework,Linq,我有一个ASP.NETMVC项目。 我需要连接一个数据库,并从中提取所有后缀为'r'的客户端。我试过: public class MyDBRepository { public IEnumerable<MyClient> GetNamesBySuffix(char symbol) { List<MyClient> myClients = new List<MyClient>(); using (MyDBEnti

我有一个ASP.NETMVC项目。 我需要连接一个数据库,并从中提取所有后缀为
'r'
的客户端。我试过:

public class MyDBRepository
{
    public IEnumerable<MyClient> GetNamesBySuffix(char symbol)
    {
        List<MyClient> myClients = new List<MyClient>();

        using (MyDBEntities m = new MyDBEntities())
        {
            List<Client> Clients = new List<Client>();
            Clients = m.Clients.Where(c => c.name[c.name.Length-1] == symbol).ToList();
            foreach (Client client in Clients)
            {
                MyClient newClient = new MyClient() { Name = client.name };
                myClients.Add(newClient);
            }
            return myClients;
        }
    }
}
公共类MyDBRepository
{
公共IEnumerable GetNamesbyUFFIX(字符符号)
{
List myClients=new List();
使用(MyDBEntities m=new MyDBEntities())
{
列表客户端=新列表();
Clients=m.Clients.Where(c=>c.name[c.name.Length-1]==symbol.ToList();
foreach(客户端中的客户端)
{
MyClient newClient=newmyclient(){Name=client.Name};
myClients.Add(newClient);
}
返回我的客户;
}
}
}
我得到的是
系统。不支持异常
,我不能在sql中使用索引
(c.name[c.name.Length-1])
。。 为帮手们加油

试试看

Clients = m.Clients.Where(c => c.name.EndsWith(symbol.ToString())).ToList();

查看以下代码,该代码用于根据最后一个字符查找数据

public class MyDBRepository
{
  public IEnumerable<MyClient> GetNamesBySuffix(char symbol)
  {
    List<MyClient> myClients = new List<MyClient>();

    using (MyDBEntities m = new MyDBEntities())
    {
      myClients = m.Clients.Where(c => c.name.Trim().EndsWith(symbol+""))
                           .Select(c=>new MyClient {name=c.name})
                           .ToList();           
      return myClients;
    }
  }
}
公共类MyDBRepository
{
公共IEnumerable GetNamesbyUFFIX(字符符号)
{
List myClients=new List();
使用(MyDBEntities m=new MyDBEntities())
{
myClients=m.Clients.Where(c=>c.name.Trim().EndsWith(symbol+“”))
.Select(c=>newmyclient{name=c.name})
.ToList();
返回我的客户;
}
}
}

您是否尝试过:
m.Clients.Where(c=>c.name.EndsWith(“r”);
?Ty!真的很有帮助!什么?我应该做点什么吗?