首先,我为过分简化道歉,但我有这个问题,这让我疯狂。它应该工作 - 这是简单的代码,没有什么花哨.......不能添加到通用列表
我有这样的对象
public class Stuff
{
private int intStuff;
private string strStuff;
public Stuff(int StuffID, string Stuff)
{
intStuff = StuffID;
strStuff = Stuff;
}
public int StuffID
{
get { return intStuff; }
set { intStuff = value; }
}
public string Stuff
{
get{return strStuff;}
set{strStuff=value;}
}
}
这也是使用的这个类:
public class StuffandThings
{
private List<Stuff> lstMyStuff;
public List<Stuff> StuffList
{
set { lstMyStuff = value; }
get { return lstMyStuff; }
}
public StuffandThings()
{
lstMyStuff = new List<Stuff>();
}
}
这是声明为在Global.asax中< < < <静态的,这可能是重要的
public static StuffAndThings MyStuff;
protected void Application_Start(object sender, EventArgs e)
{
MyStuff = new StuffandThings();
}
当我在代码中使用它:
foreach (string strStuff in lstStuff)
{
objStuff = new Stuff(intStuff,strStuff);
Global.MyStuff.StuffList.Add(objStuff);
}
它编译,我可以在调试运行(这是一个WCF Web服务),我的变量(intStuff和lstStuff)是当我点击服务的所有valid.but .svc在浏览器中出现以下错误。
CS1502:为了获得最佳重载方法匹配“System.Collections.Generic.List.Add(东西)”有一些无效参数
我不认为我能看到木材与树木这一个和interwebs一直没有帮助。
麻生太郎,在全局对象我的所有其他对象和功能都很好 - 哈希表居多,而我的代码跑,直到我试图添加此功能。我会使用散列表,但我需要的关键不是唯一的;
有什么想法吗?
感谢
P
你可以发布声明objStuff的地方吗? – 2010-01-15 22:43:39
对于包含WCF的线程代码,这些静态对象是**梦魇**。如果你使用这种设计,我认为你会发现你很快就会得到清单腐败。 – 2010-01-15 23:17:17