C# 缓存不可用。net中使用web方法时出错 [WebMethod(EnableSession=true)] 公共静态void ProcessIT(字符串id) { string result=id;//“欢迎先生”+name+。您的地址是“+address+”; string[]idsplit=result.Split(“”); 字符串Quesid=idsplit[1]; Admin_NewPractice1 a=新Admin_NewPractice1(); a、 getid(Quesid); //返回结果; } 公共void getid(字符串Quesid) { 尝试 { //ds2.表。添加(dt); 数据集ds2=新数据集(); ds2=(数据集)缓存[“mytable”];//出现此行错误 int m=转换为32(Quesid); if(m
我认为您以错误的方式访问缓存 请试一试C# 缓存不可用。net中使用web方法时出错 [WebMethod(EnableSession=true)] 公共静态void ProcessIT(字符串id) { string result=id;//“欢迎先生”+name+。您的地址是“+address+”; string[]idsplit=result.Split(“”); 字符串Quesid=idsplit[1]; Admin_NewPractice1 a=新Admin_NewPractice1(); a、 getid(Quesid); //返回结果; } 公共void getid(字符串Quesid) { 尝试 { //ds2.表。添加(dt); 数据集ds2=新数据集(); ds2=(数据集)缓存[“mytable”];//出现此行错误 int m=转换为32(Quesid); if(m,c#,asp.net,asmx,C#,Asp.net,Asmx,我认为您以错误的方式访问缓存 请试一试 [WebMethod(EnableSession = true)] public static void ProcessIT(string id) { string result = id;// "Welcome Mr. " + name + ". Your address is '" + address + "'."; string[] idsplit = result.Split('_');
[WebMethod(EnableSession = true)]
public static void ProcessIT(string id)
{
string result = id;// "Welcome Mr. " + name + ". Your address is '" + address + "'.";
string[] idsplit = result.Split('_');
string Quesid = idsplit[1];
Admin_NewPractice1 a = new Admin_NewPractice1();
a.getid(Quesid);
// return result;
}
public void getid(string Quesid)
{
try
{
//ds2.Tables.Add(dt);
DataSet ds2 = new DataSet();
ds2 = (DataSet)Cache["mytable"]; // this line error comes
int m = Convert.ToInt32(Quesid);
if (m < ds2.Tables[0].Rows.Count)
fetchCommonData(ds2.Tables[0].Rows[m]);
}
catch (Exception ex)
{
throw ex;
}
}
HttpContext.Current.Cache
将允许您访问范围为应用程序级别的缓存对象
附言:
很遗憾,您无法访问自定义类中的缓存对象
它将抛出一个错误,如
非静态字段、方法或属性需要对象引用
HttpContext.Current.Cache
现在,如果您的类继承自System.Web.UI.Page
,它不会生成编译时错误,而是生成运行时错误
它报告类似于“缓存不可用”
因此,解决办法之一是使用
'System.Web.Caching.Cache.Get(string)'
我不认为仅仅是标题就足以让我明白你想要什么。您能写出您的问题并指出导致错误的代码位吗?ASMX是一种遗留技术,不应用于新的开发。WCF或ASP.NET Web API应用于Web服务客户端和服务器的所有新开发。一个提示:微软已经停用了MSDN上的。另外,你应该去掉try/catch块。这只会破坏堆栈跟踪。请显示更多代码。您的类是否扩展了UI.Page?您是否尝试过HttpContext.Current.Cache
?
HttpContext.Current.Cache