Visual Studio 2013 选择2.0目标框架时DLL引用不到的问题解决办法

json 与实体类之间转化时

很多小伙伴 都会用到如下方法

        #region 将JSON字符串序列化为对象
        public T JSONToObject<T>(string sJSON)
        {
            try
            {
                T myObject;
                System.Web.Script.Serialization.JavaScriptSerializer jss = new System.Web.Script.Serialization.JavaScriptSerializer();
                jss.MaxJsonLength = Int32.MaxValue;
                myObject = jss.Deserialize<T>(sJSON);
                return myObject;
            }
            catch
            {
                return default(T);
            }
        }
        #endregion

        #region 对象序列为JSON
        public string ObjectToJSON<T>(T ObjctT)
        {
            try
            {
                string sJSON = string.Empty;
                System.Web.Script.Serialization.JavaScriptSerializer jss = new System.Web.Script.Serialization.JavaScriptSerializer();
                jss.MaxJsonLength = Int32.MaxValue;
                sJSON = jss.Serialize(ObjctT);
                return sJSON;
            }
            catch
            {
                return "";
            }
        }
        #endregion

这个需要引用System.Web.Extensions.dll

并且 using System.Web.Script.Serialization;

因客户环境问题 我们只能选择低版本的2.0框架,开发环境为VS2013 这时候 无法引用 3.5(或者更高版本的DLL) 引用之后 立刻消失

 

 

解决办法就是 暴力的把C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.5\System.Web.Extensions.dll 拷贝到 

C:\Windows\Microsoft.NET\Framework\v2.0.50727下 就能解决了

 

posted on 2019-09-18 19:30  金宝的博客  阅读(344)  评论(0)    收藏  举报

导航