C#静态类中的方法调用出错
静态类:
public static class jsonToCsharp
{
public static List<T> JSONStringToList<T>(this string JsonStr)
{
JavaScriptSerializer Serializer = new JavaScriptSerializer();
List<T> objs = Serializer.Deserialize<List<T>>(JsonStr);
return objs;
}
public static T Deserialize<T>(string json)
{
T obj = Activator.CreateInstance<T>();
using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(json)))
{
DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());
return (T)serializer.ReadObject(ms);
}
}
}
然后在另外一个类中调用
using jsonToCsharp;
......
......
string JsonStr = "[{Name:'苹果',Price:5.5},{Name:'橘子',Price:2.5},{Name:'柿子',Price:16}]";
List<Product> products = new List<Product>();
products = jsonToCsharp.JSONStringToList<Product>(JsonStr);
错误:命名空间“jsonToCsharp”中不存在类型或命名空间名称“JSONStringToList”。是否缺少程序集引用?
求指导
[解决办法]
jsonToCsharp 这个是类名 还是 命名空间, 我看似乎你的类名是 jsonToCsharp 然后引用的命名空间也是 jsonToCsharp。
jsonToCsharp.jsonToCsharp.JSONStringToList<Product>(JsonStr);
[解决办法]
products = jsonToCsharp.JSONStringToList<Product>(JsonStr);
改为:
products = jsonToCsharp.jsonToCsharp.JSONStringToList<Product>(JsonStr);