C# 无效的匿名类型成员错误

C# 无效的匿名类型成员错误,c#,C#,本期与上一期类似。我收到一个无效的匿名类型成员错误。然而,我已经对它进行了修复,并确保它与我试图提取的给定数据相匹配 var branches = ctx.tblCodeBrokBranches.Where(comp => comp.BrokOffID == 1); var activeBrokerLocs = branches.Select(b => new { b.BrokOf

本期与上一期类似。我收到一个无效的匿名类型成员错误。然而,我已经对它进行了修复,并确保它与我试图提取的给定数据相匹配

var branches = ctx.tblCodeBrokBranches.Where(comp => comp.BrokOffID == 1);
                var activeBrokerLocs = branches.Select(b => new
                {
                    b.BrokOffID.ToString(), //Invalid anonymous type member declarator. Anonymous type members must be declared with a member assignment, simple name or member access.
                    b.BrokBranch
                })
                                .AsEnumerable()
                                .Select(b => new SelectListItem
                                {
                                    Value = b.BrokOffID.ToString(),
                                    Text = b.BrokBranch
                                });

除非可以从属性或字段表达式推断出成员名称,否则必须为该成员指定一个显式名称:

var activeBrokerLocs = branches.Select(b => new
{
    BrokOffID = b.BrokOffID.ToString(),
    b.BrokBranch
})...
但从您的评论来看,
BrokOffID
似乎已经是一个字符串。在这种情况下,您根本不需要调用
ToString
,您可以让C#推断成员名称:

var activeBrokerLocs = branches.Select(b => new
{
    b.BrokOffID,
    b.BrokBranch
})...

除非可以从属性或字段表达式推断出成员名称,否则必须为该成员指定一个显式名称:

var activeBrokerLocs = branches.Select(b => new
{
    BrokOffID = b.BrokOffID.ToString(),
    b.BrokBranch
})...
但从您的评论来看,
BrokOffID
似乎已经是一个字符串。在这种情况下,您根本不需要调用
ToString
,您可以让C#推断成员名称:

var activeBrokerLocs = branches.Select(b => new
{
    b.BrokOffID,
    b.BrokBranch
})...

我将其调整为您建议的值,但现在当我运行测试时,我得到的LINQ to Entities无法识别方法'System.String ToString()'方法,并且无法将此方法转换为存储表达式错误。我将其调整为您建议的值,但现在当我运行测试时,我获得的LINQ to Entities无法识别方法“System.String ToString()”方法,并且此方法无法转换为存储表达式错误。