我得到的错误是:
CS1061:'Web2Print.ArtworkLabel'确实如此 不包含'ID'和。的定义 没有扩展方法'ID'接受a 类型的第一个参数 'Web2Print.ArtworkLabel'可能是 发现(你错过了使用 指令或程序集引用?)
在线:
string FormVal = Request.Form["label" + TheLabel.ID];
该行所在的代码块是:
public void SaveData(object sender, EventArgs e)
{
// New data record
ArtworkData DataRecord = new ArtworkData(DataID);
DataRecord.LoadTemplate();
DataRecord.Template.LoadLabels();
DataRecord.LoadDataLabels();
// Delete all from DB
ArtworkCommon.DeleteDataLabels(DataID);
ArrayList LabelsCollection = new ArrayList();
// Loop through all the fields
foreach (ArtworkLabel TheLabel in DataRecord.Template.Labels)
{
string FormVal = Request.Form["label" + TheLabel.ID];
ArtworkLabel
的定义是:
/// <summary>
/// A template label
/// </summary>
public class ArtworkLabel
{
public bool Loaded { get; set; }
public int ID { get; set; }
public string Text { get; set; }
public LabelStyle Style { get; set; }
public Coordinate Coords { get; set; }
public int TemplateID { get; set; }
public int PageNumber { get; set; }
我知道,代码编写得不是很好。抛出错误的函数存在于命名空间Web2Print
中,但ArtworkLabel
类在命名空间中不存在。我不认为这应该是一个问题。
我也尝试过重建,清除临时文件。
答案 0 :(得分:2)
存在抛出错误的函数 在命名空间Web2Print中,但是 ArtworkLabel类不存在于 命名空间
一切都必须在命名空间中。找出ArtworkLabel所在的命名空间,并将其称为ArtworkLabelNameSpace.ArtworkLabel
。
同时检查ASPX文件中是否存在名为ArtworkLabel
的控件;错误消息听起来像它实际上找到了匹配的对象,但该对象没有定义ID属性。