C# 模型不包含的定义,也不包含扩展方法

C# 模型不包含的定义,也不包含扩展方法,c#,linq,C#,Linq,我继承的数据库有很多写得很差的存储过程,我不允许更改这些存储过程,因为它们正在其他程序中使用,而且有太多的存储过程需要全部重写。我试图通过使用LINQGroupBy消除重复项,但我得到的错误是“模型”不包含字段的定义,当然,它确实包含。我相信这是我错过的简单的东西。非常感谢您的帮助 这是我的密码: public async Task<ActionResult> GetIncidentColumns() { int questionCluster

我继承的数据库有很多写得很差的存储过程,我不允许更改这些存储过程,因为它们正在其他程序中使用,而且有太多的存储过程需要全部重写。我试图通过使用LINQGroupBy消除重复项,但我得到的错误是“模型”不包含字段的定义,当然,它确实包含。我相信这是我错过的简单的东西。非常感谢您的帮助

这是我的密码:

public async Task<ActionResult> GetIncidentColumns()
        {
            int questionClusterID = 25;
            var getcolumns = await CommonClient.GetIncidentColumnsForClusterID(questionClusterID);
            var columns = getcolumns.GroupBy(c => c).Select(grp => grp.IncidentColumnID).ToArray();
            return Json(columns, JsonRequestBehavior.AllowGet);
        }
public异步任务GetIncidentColumns()
{
int-questionClusterID=25;
var getcolumns=等待CommonClient.GetIncidentColumnsForClusterID(questionClusterID);
var columns=getcolumns.GroupBy(c=>c).Select(grp=>grp.IncidentColumnID).ToArray();
返回Json(列,JsonRequestBehavior.AllowGet);
}
模型如下:

public class IncidentColumnsModel
    {
        public int IncidentTabulationID { get; set; }
        public int IncidentColumnID { get; set; }
        public string vchColumnReference { get; set; }
        public Nullable<int> ColumnNameID { get; set; }
        public Nullable<byte> intSequence { get; set; }
        public string vchHeaderCssClass { get; set; }
        public string vchColumnHeaderText { get; set; }
        public string vchToolTip { get; set; }
        public string vchColumnCssClass { get; set; }
        public Nullable<byte> intHeaderRow { get; set; }
        public Nullable<bool> bitStartHeaderTextAboveColumn { get; set; }
        public string vchHeaderTextAboveColumn { get; set; }
        public Nullable<byte> intHeaderTextAboveColumnCount { get; set; }
        public string vchHeaderTextAboveColumnColor { get; set; }
        public Nullable<byte> intColumnPrecicion { get; set; }
        public Nullable<byte> intColumnScale { get; set; }
        public Nullable<bool> bitCalculatedColumn { get; set; }
        public Nullable<bool> bitAllowDataEntry { get; set; }
        public Nullable<bool> bitIncludeInSummaryRow { get; set; }
        public Nullable<byte> ColumnSummaryTypeID { get; set; }
        public Nullable<byte> intFormulaNumeratorASeqNum { get; set; }
        public Nullable<byte> intFormulaNumeratorBSeqNum { get; set; }
        public Nullable<byte> intFormulaNumeratorCSeqNum { get; set; }
        public Nullable<byte> intFormulaNumeratorDSeqNum { get; set; }
        public Nullable<byte> intFormulaNumeratorESeqNum { get; set; }
        public Nullable<decimal> decFormulaNumeratorMultiplier { get; set; }
        public Nullable<bool> bitThisIsARatio { get; set; }
        public Nullable<byte> intFormulaDenomeratorFSeqNum { get; set; }
        public Nullable<byte> intFormulaDenomeratorGSeqNum { get; set; }
        public Nullable<byte> intFormulaDenomeratorHSeqNum { get; set; }
        public Nullable<byte> intFormulaDenomeratorISeqNum { get; set; }
        public Nullable<byte> intFormulaDenomeratorJSeqNum { get; set; }
        public Nullable<decimal> decFormulaDenomeratorMultiplier { get; set; }
        public Nullable<bool> bitFormulaValidate { get; set; }
        public string vchValidateOnFormulaText { get; set; }
        public Nullable<byte> intValidateGTESeqNum { get; set; }
        public Nullable<decimal> decValidateGTEMultiplier { get; set; }
        public Nullable<byte> intValidateLTSeqNum { get; set; }
        public Nullable<decimal> decValidateLTMultiplier { get; set; }
        public Nullable<bool> bitRangeValidate { get; set; }
        public string vchValidateOnRangeText { get; set; }
        public Nullable<decimal> decRangeValidGTE { get; set; }
        public Nullable<decimal> decRangeValidLT { get; set; }
        public Nullable<bool> bitRequiredField { get; set; }
        public string vchAssociatedDetailColumn { get; set; }
        public string vchAssociatedSummaryColumn { get; set; }
        public Nullable<byte> intColumnPositionFromLeft { get; set; }
        public Nullable<byte> intValidateGTESeqNumB { get; set; }
        public Nullable<byte> intValidateGTESeqNumC { get; set; }
        public Nullable<byte> intValidateLTSeqNumB { get; set; }
        public Nullable<byte> intValidateLTSeqNumC { get; set; }
        public Nullable<bool> bitRolling12MonthCalculation { get; set; }
        public Nullable<bool> bitRolling4QuarterCalculation { get; set; }
        public Nullable<byte> intSummaryFormulaNumeratorASeqNum { get; set; }
        public Nullable<byte> intSummaryFormulaNumeratorBSeqNum { get; set; }
        public Nullable<byte> intSummaryFormulaNumeratorCSeqNum { get; set; }
        public Nullable<byte> intSummaryFormulaNumeratorDSeqNum { get; set; }
        public Nullable<byte> intSummaryFormulaNumeratorESeqNum { get; set; }
        public Nullable<decimal> decSummaryFormulaNumeratorMultiplier { get; set; }
        public Nullable<bool> bitSummaryThisIsARatio { get; set; }
        public Nullable<byte> intSummaryFormulaDenomeratorFSeqNum { get; set; }
        public Nullable<byte> intSummaryFormulaDenomeratorGSeqNum { get; set; }
        public Nullable<byte> intSummaryFormulaDenomeratorHSeqNum { get; set; }
        public Nullable<byte> intSummaryFormulaDenomeratorISeqNum { get; set; }
        public Nullable<byte> intSummaryFormulaDenomeratorJSeqNum { get; set; }
        public Nullable<decimal> decSummaryFormulaDenomeratorMultiplier { get; set; }
    }
public class IncidentColumnsModel
{
public int incidenttablationId{get;set;}
public int IncidentColumnID{get;set;}
公共字符串vchColumnReference{get;set;}
公共可为空的ColumnNameID{get;set;}
公共可为空的整数序列{get;set;}
公共字符串vchheadercsclass{get;set;}
公共字符串vchColumnHeaderText{get;set;}
公共字符串vchToolTip{get;set;}
公共字符串vchColumnCssClass{get;set;}
可在aderrow{get;set;}中为空的公共
列{get;set;}上的公共可空位StarTheaderTexts
公共字符串vchheaderTextOverColumn{get;set;}
AderTextOverColumnCount{get;set;}中的公共可为空
公共字符串vchheaderTextOverColumnColor{get;set;}
公共可空IntColumnPricion{get;set;}
公共可空intColumnScale{get;set;}
公共可为空的bitCalculatedColumn{get;set;}
公共可为空的bitAllowDataEntry{get;set;}
公共可为Null的位IncludeInSummaryRow{get;set;}
公共可空列SummaryTypeId{get;set;}
公共可空IntFormulaNumeratorSeqNum{get;set;}
公共可空intFormulaNumeratorBSeqNum{get;set;}
公共可空intFormulaNumeratorCSeqNum{get;set;}
公共可空intFormulaNumeratorDSeqNum{get;set;}
公共可空IntFormulaNumeratorReseqNum{get;set;}
公共可为空的decFormulaNumeratorMultiplier{get;set;}
公共可为空的bitThisIsARatio{get;set;}
公共可空intFormulaDenomeratorFSeqNum{get;set;}
公共可空intFormulaDenomeratorGSeqNum{get;set;}
公共可空intFormulaDenomeratorHSeqNum{get;set;}
公共可空intFormulaDenomeratorISeqNum{get;set;}
公共可空intFormulaDenomeratorJSeqNum{get;set;}
公共可为空的deformuladenomeratormultiplier{get;set;}
公共可为空的bitFormulaValidate{get;set;}
公共字符串vchValidateOnFormulaText{get;set;}
公共可空IntValidateSeqnum{get;set;}
公共可空的DecValidateGetMultiplier{get;set;}
公共可为Null的IntValidatelSeqNum{get;set;}
公共可为空的dec验证乘法器{get;set;}
公共可为空的bitRangeValidate{get;set;}
公共字符串vchValidateOnRangeText{get;set;}
公共可为空的DecangeValidGet{get;set;}
公共可为空的DecangeValidlt{get;set;}
公共可为空的bitRequiredField{get;set;}
公共字符串vchAssociatedDetailColumn{get;set;}
公共字符串VCHASSociatedSummary列{get;set;}
公共可为null的intColumnPositionFromLeft{get;set;}
公共可空IntValidateSeqNumb{get;set;}
公共可为空的IntValidateSeqNumc{get;set;}
公共可为null的IntValidatelSeqNum{get;set;}
公共可为空的IntValidateLSeqNumc{get;set;}
公共可为空的bitRolling12MonthCalculation{get;set;}
公共可为空的bitRolling4QuarterCalculation{get;set;}
公共可空intSummaryFormulaNumeratorASeqNum{get;set;}
公共可空intSummaryFormulaNumeratorBSeqNum{get;set;}
公共可空intSummaryFormulaNumeratorCSeqNum{get;set;}
公共可空intSummaryFormulaNumeratorDSeqNum{get;set;}
公共可空IntSummaryFormulaNumeratorReseqNum{get;set;}
公共可空的decSummaryFormulaNumeratorMultiplier{get;set;}
公共可为空的位总和ThisIsaRatio{get;set;}
公共可空intSummaryFormulaDenomeratorFSeqNum{get;set;}
公共可空intSummaryFormulaDenomeratorGSeqNum{get;set;}
公共可空intSummaryFormulaDenomeratorHSeqNum{get;set;}
公共可空intSummaryFormulaDenomeratorISeqNum{get;set;}
公共可空intSummaryFormulaDenomeratorJSeqNum{get;set;}
公共可空的decSummaryFormulaDenomeratorMultiplier{get;set;}
}
()返回类型为
IEnumerable
的对象


I分组是否具有名为
IncidentColumnID
的属性?

您只需要一个ID列,因此您应该在
IncidentColumnID
上分组,然后通过编写以下内容将其投影到
IncidentColumnID

var columns = getcolumns.GroupBy(c => c.IncidentColumnID)
                        .Select(grp => grp.First())
                        .ToArray();

这确实停止了错误,并消除了重复项,但它返回的是键字段,而不是其他字段。为此,您需要进一步投影。对不起,我不确定您的意思,是这样的。谢谢!