不包含定义或扩展方法

时间:2011-10-12 13:54:35

标签: c# .net compiler-errors

我在尝试构建时遇到下一个错误:

  

不包含定义或扩展方法

我有一个这样的课程:

[Serializable]    
public class JobFile
{
    private FileInfo mFileInfo;
    private string mJobNumber = string.Empty;
    private string mBaseJobNumber = string.Empty;
    private Guid mDocumentTytpeid = Guid.Empty;

    public string DocumentTypeDescription
    {
        get
        {
            string description;   
            DocumentType DocType;
            DocType = DocumentType.GetDocType(DocumentTypeCode);          
            if (DocType.Code == null)                    
                description = "Unknown";
            else                  
                description = DocType.Description;                   
            return description;
        }
    }

    public Guid DocumentTypeID
    {
        get
        {              
            DocumentType DocType;
            DocType = DocumentType.GetDocType(DocumentTypeCode);
            if (DocType.Code == null)
                mDocumentTytpeid = Guid.Empty;                  
            else
                mDocumentTytpeid = DocType.Id;
            return mDocumentTytpeid;
        }
    }

现在我试图在其他类中获取Documenttypeid的值,如下所示:

foreach (FileInfo fi in files)
{
    JobFile jf = null;
    jf = new JobFile(ref fi);
    f.DocumentTypeId = jf.DocumentTypeID; //<-- error is here
}

有谁知道可能出现的问题以及如何解决? 感谢。

2 个答案:

答案 0 :(得分:1)

问题在于f.DocumentTypeId

假设它也是JobFile,则为f.DocumentTypeID(请注意 ID 不是 ID )。 C#区分大小写。此外,只有get属性访问者,而不是set


如果f是其他类型,请向我们展示代码。

答案 1 :(得分:1)

错误信息非常清楚错误。您正在尝试使用不存在的属性,并查看此行上发生错误的方式:

f.DocumentTypeId = jf.DocumentTypeID;

它只能是两件事之一:

  1. f不存在
  2. f.DocumentTypeId不存在。
  3. jf.DocumentTypeID不存在
  4. 老实说,我会检查以确保f.DocumentTypeId不应该是f.DocumentTypeID。 C#对此类事情很挑剔,像这样的小错误会导致你收到的错误。