C# 返回空值的实体框架

C# 返回空值的实体框架,c#,entity-framework,C#,Entity Framework,我正在尝试将WCF服务中的列表返回给客户端 我使用实体框架来查询我的数据库 我的实体框架库中有以下代码: public List<Users> getUsersByLastName(string pLastName) { using (var context = new AMTEntitiesContainer()) { var users = context.Users .Where((c) =&

我正在尝试将WCF服务中的列表返回给客户端

我使用实体框架来查询我的数据库

我的实体框架库中有以下代码:

public List<Users> getUsersByLastName(string pLastName)
{
    using (var context = new AMTEntitiesContainer())
    {
        var users = context.Users
                           .Where((c) => c.LastName.Contains(pLastName))
                           .ToList();
        return users;
    }
}
public List getUsersByLastName(字符串名称)
{
使用(var context=new amtentiescontainer())
{
var users=context.users
.其中((c)=>c.LastName.Contains(pLastName))
.ToList();
返回用户;
}
}
以下是我在WCF中捕获结果并返回结果的方式:

public List<wcfUser> getUsersByLastName(string pLastName)
{
    UserMethods userMethods = new UserMethods();
    List<Users> usersList = userMethods.getUsersByLastName(pLastName);
    List<wcfUser> usersListForClient = new List<wcfUser>();
    wcfUser usersForClient = new wcfUser();
    foreach (Users u in usersList)
    {
        usersForClient = new wcfUser();
        TranslateServerUserToClientUser(u, usersForClient);
        usersListForClient.Add(usersForClient);
    }
    return usersListForClient;
}
public List getUsersByLastName(字符串名称)
{
UserMethods UserMethods=新的UserMethods();
List usersList=userMethods.getUsersByLastName(pLastName);
List usersListForClient=new List();
wcfUser usersForClient=新的wcfUser();
foreach(用户列表中的用户u)
{
usersForClient=new wcfUser();
TranslateServerUserToClient(u,usersForClient);
usersListForClient.Add(usersForClient);
}
返回usersListForClient;
}
问题是,出于某种原因,usersList总是空的。为什么


我通过向LINQPad抛出相同的查询来检查DB是否为空,这解决了问题,显然DB返回了一些奇怪的东西,但这捕获了它:

private AMTEntitiesContainer context = new AMTEntitiesContainer();

public IEnumerable<Users> getUsersByLastName(string pLastName)
{
    IQueryable<Users> results;

    results = (from m in context.Users
               where m.LastName.StartsWith(pLastName)
               select m);

    return results;
}
private amtentiescontainer context=new amtentiescontainer();
公共IEnumerable getUsersByLastName(字符串名称)
{
可预测的结果;
结果=(来自context.Users中的m)
其中m.LastName.StartsWith(pLastName)
选择m);
返回结果;
}

请检查您的翻译器好吗?我仔细检查了我的翻译器,但仍然..列表不是空的..是空的:(调用此函数时,我在客户端上得到的是d:[]我传递了“m”的值或“..我甚至硬编码了,以便它什么时候会这样做。包含(“”),而不是接收参数..但它仍然响应d:[]@MaG3Stican那么,如果您在
return usersListForClient;
上设置了一个断点,该断点将充满数据?如果是,请尝试更新您的服务引用。