积极答复者
Help!!关于dll使用session的问题

问题
-
这是原3个CS文件中的一句代码, string newfileName = "portraits/" + Guid.NewGuid().ToString("N") + ".png";我想将其中的 Guid.NewGuid().ToString("N") 改成Session["name"].ToString()作为外部传递值进来的接口,然后再编译成dll使用,但在编译时总是提示“session不存在”的错误,该怎么解决??谢谢!!!
- 已移动 孟宪会Moderator 2011年2月26日 1:38 (发件人:Visual C#)
答案
-
1、封装成单独的类
public class TestClass
{
public void Test(HttpContext context)
{
......
//HttpContext context = HttpContext.Current; //注释掉这一段,该变量已为方法参数
Cutter cut = new Cutter(
double.Parse(context.Request["zoom"]),
-int.Parse(context.Request["x"]),
-int.Parse(context.Request["y"]),
int.Parse(context.Request["width"]),
int.Parse(context.Request["height"]),
oldBitmap.Width,
oldBitmap.Height);.......
}
}
2、在*.aspx.cs中
TestClass testClass = new TestClass();
testClass(HttpContext.Current);
- 已标记为答案 吉利儿 2011年3月1日 22:20
全部回复
-
要使用 HttpContext.Current.Session。 并注意,如果用了 HttpContext 的话,其他人只能在基于 Web 的项目上使用您的 DLL,Windows Forms 和 WPF 就不被支持了。
Mark Zhou- 已建议为答案 肖小勇Moderator 2011年2月25日 4:32
-
FileInfo fi = new FileInfo(src);
string ext = fi.Extension;string newfileName = "portraits/" + Guid.NewGuid().ToString("N") + ".png";
//Image.GetThumbnailImageAbort abort = null;
Bitmap oldBitmap = new Bitmap(src);
HttpContext context = HttpContext.Current;
Cutter cut = new Cutter(
double.Parse(context.Request["zoom"]),
-int.Parse(context.Request["x"]),
-int.Parse(context.Request["y"]),
int.Parse(context.Request["width"]),
int.Parse(context.Request["height"]),
oldBitmap.Width,
oldBitmap.Height);Bitmap bmp = Helper.GenerateBitmap(oldBitmap, cut);
oldBitmap.Dispose();
string temp = Path.Combine(context.Server.MapPath("~/"), newfileName);
bmp.Save(temp, ImageFormat.Png);
bmp.Dispose();
return "{msg:'success',src:'" + newfileName + "'}"; -
1、封装成单独的类
public class TestClass
{
public void Test(HttpContext context)
{
......
//HttpContext context = HttpContext.Current; //注释掉这一段,该变量已为方法参数
Cutter cut = new Cutter(
double.Parse(context.Request["zoom"]),
-int.Parse(context.Request["x"]),
-int.Parse(context.Request["y"]),
int.Parse(context.Request["width"]),
int.Parse(context.Request["height"]),
oldBitmap.Width,
oldBitmap.Height);.......
}
}
2、在*.aspx.cs中
TestClass testClass = new TestClass();
testClass(HttpContext.Current);
- 已标记为答案 吉利儿 2011年3月1日 22:20