C# 非发票会员';TSM.ProxMatchOutputContract.DataField';不能像方法一样使用

C# 非发票会员';TSM.ProxMatchOutputContract.DataField';不能像方法一样使用,c#,asp.net,vb.net,C#,Asp.net,Vb.net,非invocable成员不能像方法一样使用 我一直在寻找对这个错误的一些反应,但我还没有找到答案 这是我的声明: private IEnumerable<string> _dataFields = null; [DataMember(Name = "data_fields")] public IEnumerable<string> DataFields { get { if (_data

非invocable成员不能像方法一样使用

我一直在寻找对这个错误的一些反应,但我还没有找到答案

这是我的声明:

   private IEnumerable<string> _dataFields = null;
    [DataMember(Name = "data_fields")]
    public IEnumerable<string> DataFields
    {
        get
        {
            if (_dataFields == null)
            {
                _dataFields = new List<string>();
            }
            return _dataFields;
        }
        set { _dataFields = value; }
    }
private IEnumerable\u数据字段=null;
[DataMember(Name=“数据字段”)]
公共IEnumerable数据字段
{
得到
{
如果(_dataFields==null)
{
_数据字段=新列表();
}
返回_数据字段;
}
设置{u dataFields=value;}
}
这里是我使用数据字段和获取错误的地方,该错误被抛出到ExpectedDataFields(索引)和result.Datafields(索引):

内部无效OnDeserializedPopulateQueryResults(StreamingContext上下文)
{
if(this.ExpectedDataFields.Count()>0&&this.QueryResults.Count()>0)
{
foreach(ProxMatchOutputContract导致此.QueryResults)
{
对于(int index=0;index此代码

result.DataField[this.ExpectedDataFields(index)]
尝试将数据字段视为具有索引器,而
IEnumerable
没有索引器

也许可以将属性的定义更改为具有索引器的内容,例如
List


此外,我假设该行周围的星号是一个输入错误,或者可能是试图将该行格式化为斜体(当该行已被格式化为代码时,该操作不起作用)。

Nevermind,这似乎并没有解决问题。我改为“public List expecteddata fields{get{if(yExpEdTeaFields=空){{ ExpEdTeDaFields=新的List.());}返回ExpEdvestDATAFIELD;} {{ ExpEdTeDaFields=值;}}这是否解决了问题?如果是,请考虑支持和/或接受答案。
result.DataField[this.ExpectedDataFields(index)]