C# 通过json传递HttpContext.Current或从web服务实例化对象

C# 通过json传递HttpContext.Current或从web服务实例化对象,c#,json,C#,Json,如何通过json传递HttpContext.Current 我猜是这样的: 字符串hc=HttpContext.Current.toJSON 这是我的塞纳里奥 我有20个asp.net站点,我想共享一个使用http上下文的MyAddControlsClass。此类将控件添加到其实例化所在的页面。我不想因为可维护性问题重复这个类20次。我也不能引用DLL,唯一的方法是通过web服务。 //in page load var my As New myAddControllsClassService.

如何通过json传递HttpContext.Current

我猜是这样的:

字符串hc=HttpContext.Current.toJSON

这是我的塞纳里奥

我有20个asp.net站点,我想共享一个使用http上下文的MyAddControlsClass。此类将控件添加到其实例化所在的页面。我不想因为可维护性问题重复这个类20次。我也不能引用DLL
,唯一的方法是通过web服务。

//in page load

var my As New myAddControllsClassService.WebService

        my.addControlls(httpContext.Current)

//simplified version of my class
public class myAddControllsClass
{



    public void AddButton()
    {

            //scan controls in the context here

        Page pg = (Page)HttpContext.Current.Handler;

        HtmlButton txtb = new HtmlButton();

        txtb.InnerText = "my button";

        pg.Form.Controls.Add(txtb);

    }


}
你知道怎么做吗


谢谢你

不,你不能那样做

同样的道理也适用于这里

将web服务看作是一种可以通过web调用的方法,传递 参数和接收处理后的值

HttpContext.Current
与您当前的请求相关。它不能通过web服务传递。无法序列化所有对象

要将数据传递给web服务,必须能够序列化数据。套接字连接、文件句柄等无法在web服务中序列化和重建


像这样共享代码的理想方法是创建一个dll,并在所有必须共享代码的项目中引用它。你为什么不能那样做?

不,你不能那样做

同样的道理也适用于这里

将web服务看作是一种可以通过web调用的方法,传递 参数和接收处理后的值

HttpContext.Current
与您当前的请求相关。它不能通过web服务传递。无法序列化所有对象

要将数据传递给web服务,必须能够序列化数据。套接字连接、文件句柄等无法在web服务中序列化和重建


像这样共享代码的理想方法是创建一个dll,并在所有必须共享代码的项目中引用它。你为什么不能这样做?

不要认为你可以通过整个上下文。你到底需要通过什么?谢谢我更新了我的问题上下文属于创建它的地方。没有理由把它传给其他地方。这就像当你需要给你的朋友一件家具时,把你的公寓带给他。请描述您这样做的动机,也许还有另一种方法。将“
HttpContext.Current
…传递给web服务”实际上没有意义。你想达到什么目的?谢谢-我已经更新了我的问题-我不认为你能通过整个上下文。你到底需要通过什么?谢谢我更新了我的问题上下文属于创建它的地方。没有理由把它传给其他地方。这就像当你需要给你的朋友一件家具时,把你的公寓带给他。请描述您这样做的动机,也许还有另一种方法。将“
HttpContext.Current
…传递给web服务”实际上没有意义。你想实现什么?谢谢-我已经更新了我的问题+1中的句子“共享这样的代码的理想方法是创建一个dll,并在所有必须共享代码的项目中引用它。”+1中的句子共享这样的代码的理想方法是创建一个dll,并在所有必须共享代码的项目中引用它