{"id":29833,"date":"2024-11-25T10:22:17","date_gmt":"2024-11-25T02:22:17","guid":{"rendered":"https:\/\/fwq.ai\/blog\/29833\/"},"modified":"2024-11-25T10:22:17","modified_gmt":"2024-11-25T02:22:17","slug":"%e5%be%ae%e4%bf%a1%e5%85%ac%e4%bc%97%e5%8f%b7%e6%9f%a5%e7%9c%8b%e5%85%b3%e6%b3%a8%e8%80%85%e6%8e%a5%e5%8f%a3%e7%9a%84-net%e5%ae%9e%e4%be%8b%e6%95%99%e7%a8%8b","status":"publish","type":"post","link":"https:\/\/fwq.ai\/blog\/29833\/","title":{"rendered":"\u5fae\u4fe1\u516c\u4f17\u53f7\u67e5\u770b\u5173\u6ce8\u8005\u63a5\u53e3\u7684.NET\u5b9e\u4f8b\u6559\u7a0b"},"content":{"rendered":"<p>\u5b9e\u4f53\u7c7b:<\/p>\n<pre>&nbsp;public&nbsp;class&nbsp;userlist\r\n&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;total&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;count&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;userlistopenid&nbsp;data&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;next_openid&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;}<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    <\/p>\n<pre>&nbsp;public&nbsp;class&nbsp;userlistopenid\r\n&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;List&lt;string&gt;&nbsp;openid&nbsp;{&nbsp;get;&nbsp;set;\r\n&nbsp;&nbsp;}&lt;\/string&gt;<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    <\/p>\n<pre>&nbsp;public&nbsp;class&nbsp;userdetail\r\n&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int&nbsp;subscribe&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;openid&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;nickname&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int&nbsp;sex&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;language&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;city&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;province&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;country&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;headimgurl&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int&nbsp;subscribe_time&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;unionid&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;remark&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int&nbsp;groupid&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int[]&nbsp;tagid_list&nbsp;{&nbsp;get;&nbsp;set;&nbsp;}\r\n&nbsp;&nbsp;}<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>getUser.aspx\u4ee3\u7801:<\/p>\n<pre>\r\n\r\nnbsp;html&amp;gt;\r\n\r\n\r\n&nbsp;&nbsp;&lt;meta&gt;\r\n&nbsp;&nbsp;&lt;meta&gt;\r\n&nbsp;&nbsp;&lt;meta&gt;\r\n&nbsp;&nbsp;&lt;title&gt;&lt;\/title&gt;\r\n&nbsp;&nbsp;&lt;!-- Bootstrap --&gt;\r\n&nbsp;&nbsp;&lt;link&gt;\r\n&nbsp;&nbsp;&lt;!--[if lt IE 9]&gt;\r\n   &lt;script src=\"\/\/cdn.bootcss.com\/html5shiv\/3.7.2\/html5shiv.min.js\"&gt;&lt;\/script&gt;\r\n   &lt;script src=\"\/\/cdn.bootcss.com\/respond.js\/1.4.2\/respond.min.js\"&gt;&lt;\/script&gt;\r\n  &lt;![endif]--&gt;\r\n\r\n\r\n&nbsp;&nbsp;<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236    &nbsp;&nbsp;&nbsp;&nbsp; <\/p>\n<p> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/p>\n<p> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/p>\n<p> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/p>\n<p> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <\/p>\n<p> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/p>\n<p> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&lt;script&gt;&lt;\/script&gt; &nbsp;&nbsp;&nbsp;&nbsp;&lt;script&gt;&lt;\/script&gt; &nbsp;&nbsp;   <\/p>\n<pre>&nbsp;public&nbsp;partial&nbsp;class&nbsp;getUser&nbsp;:&nbsp;System.Web.UI.Page\r\n&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;protected&nbsp;void&nbsp;Page_Load(object&nbsp;sender,&nbsp;EventArgs&nbsp;e)\r\n&nbsp;&nbsp;&nbsp;&nbsp;{\r\n\r\n&nbsp;&nbsp;&nbsp;&nbsp;}\r\n\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\u83b7\u53d6\u7528\u6237\u5217\u8868\r\n&nbsp;&nbsp;&nbsp;&nbsp;protected&nbsp;void&nbsp;btnGet_Click(object&nbsp;sender,&nbsp;EventArgs&nbsp;e)\r\n&nbsp;&nbsp;&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string&nbsp;next_opid&nbsp;=&nbsp;string.Empty;\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string&nbsp;url&nbsp;=&nbsp;\"https:\/\/api.weixin.qq.com\/cgi-bin\/user\/get?access_token=\"+mainArg.get_Token()+\"&amp;amp;next_openid=\";\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HttpWebRequest&nbsp;req&nbsp;=&nbsp;(HttpWebRequest)HttpWebRequest.Create(url);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;using&nbsp;(HttpWebResponse&nbsp;response&nbsp;=&nbsp;(HttpWebResponse)req.GetResponse())\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StreamReader&nbsp;sr&nbsp;=&nbsp;new&nbsp;StreamReader(response.GetResponseStream());\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string&nbsp;result&nbsp;=&nbsp;sr.ReadToEnd();\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sr.Close();\r\n\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MyTest.Common.Entity.userlist&nbsp;userlist&nbsp;=&nbsp;MyTest.Common.Util.JsonEntityExchange&lt;mytest.common.entity.userlist&gt;.Json2Entity(result);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\/\/Response.Write(userlist.count&nbsp;+&nbsp;\"\/\"+userlist.data+\"\/\"+userlist.next_openid+\"\/\"+userlist.total);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ddlopenids.DataSource&nbsp;=&nbsp;userlist.data.openid;\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ddlopenids.DataTextField&nbsp;=&nbsp;\"\";\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ddlopenids.DataValueField&nbsp;=&nbsp;\"\";\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ddlopenids.DataBind();\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ListItem&nbsp;item&nbsp;=&nbsp;new&nbsp;ListItem();\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;item.Text&nbsp;=&nbsp;\"--\u8bf7\u9009\u62e9\u7528\u6237\u7684openID--\";\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;item.Value&nbsp;=&nbsp;\"--0--\";\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ddlopenids.Items.Insert(0,&nbsp;item);\r\n\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;}\r\n\r\n\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\u83b7\u53d6\u7528\u6237\u57fa\u672c\u4fe1\u606f\uff08\u5305\u62ecUnionID\u673a\u5236\uff09\r\n&nbsp;&nbsp;&nbsp;&nbsp;protected&nbsp;void&nbsp;ddlopenids_SelectedIndexChanged(object&nbsp;sender,&nbsp;EventArgs&nbsp;e)\r\n&nbsp;&nbsp;&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string&nbsp;url&nbsp;=&nbsp;\"https:\/\/api.weixin.qq.com\/cgi-bin\/user\/info?access_token=\"+&nbsp;mainArg.get_Token()&nbsp;+&nbsp;\"&amp;amp;openid=\"+ddlopenids.SelectedItem.Text+\"&amp;amp;lang=zh_CN&nbsp;\";\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HttpWebRequest&nbsp;req&nbsp;=&nbsp;(HttpWebRequest)HttpWebRequest.Create(url);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;using&nbsp;(HttpWebResponse&nbsp;response&nbsp;=&nbsp;(HttpWebResponse)req.GetResponse())\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;StreamReader&nbsp;sr&nbsp;=&nbsp;new&nbsp;StreamReader(response.GetResponseStream());\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string&nbsp;result&nbsp;=&nbsp;sr.ReadToEnd();\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sr.Close();\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MyTest.Common.Entity.userdetail&nbsp;user=&nbsp;MyTest.Common.Util.JsonEntityExchange&lt;mytest.common.entity.userdetail&gt;.Json2Entity(result);\r\n\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;lblMSG.Text&nbsp;=&nbsp;user.subscribe&nbsp;+&nbsp;\"\/\"&nbsp;+&nbsp;user.openid&nbsp;+&nbsp;\"\/\"&nbsp;+&nbsp;user.nickname&nbsp;+&nbsp;\"\/\";\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;imgHead.ImageUrl&nbsp;=&nbsp;user.headimgurl;\r\n\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;}\r\n&nbsp;&nbsp;}&lt;\/mytest.common.entity.userdetail&gt;&lt;\/mytest.common.entity.userlist&gt;<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>mainArg.cs\u83b7\u53d6accessToken\u5e2e\u52a9\u7c7b\uff1a<\/p>\n<pre>&nbsp;public&nbsp;class&nbsp;mainArg\r\n&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\u6d4b\u8bd5\u53f7\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;string&nbsp;appid&nbsp;=&nbsp;\"wx3eb5bf1290db2ca0\";\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;string&nbsp;secret&nbsp;=&nbsp;\"e6013be0a7338c7d3e02877db116e231\";\r\n\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;jsapi_ticket;\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;noncestr;\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;long&nbsp;timestamp;\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;signature;\r\n\r\n&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;static&nbsp;string&nbsp;path&nbsp;=&nbsp;HttpContext.Current.Server.MapPath(@\"~\/TemplePath\");\r\n&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;static&nbsp;string&nbsp;tokenPath&nbsp;=&nbsp;HttpContext.Current.Server.MapPath(@\"~\/TemplePath\/token.txt\");\r\n&nbsp;&nbsp;&nbsp;&nbsp;private&nbsp;static&nbsp;string&nbsp;ticketPath&nbsp;=&nbsp;HttpContext.Current.Server.MapPath(@\"~\/TemplePath\/ticket.txt\");\r\n\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;mainArg()&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;noncestr&nbsp;=&nbsp;getNonceStr();\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;timestamp&nbsp;=&nbsp;getTime();\r\n&nbsp;&nbsp;&nbsp;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;summary&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;\u83b7\u53d6access_token\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;\/summary&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;returns&gt;&lt;\/returns&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;string&nbsp;get_Token()\r\n&nbsp;&nbsp;&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string&nbsp;token&nbsp;=&nbsp;null;\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\/\/\u5224\u65ad\u662f\u5426\u5b58\u5728\u6216\u8fc7\u671f\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(File.Exists(tokenPath))&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileStream&nbsp;fs&nbsp;=&nbsp;new&nbsp;FileStream(tokenPath,&nbsp;FileMode.Open);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;serializer&nbsp;=&nbsp;new&nbsp;DataContractJsonSerializer(typeof(AccToken));\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;AccToken&nbsp;readJSToken&nbsp;=&nbsp;(AccToken)serializer.ReadObject(fs);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fs.Close();\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileInfo&nbsp;fi&nbsp;=&nbsp;new&nbsp;FileInfo(tokenPath);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(CheckTimeOut(fi.LastWriteTime)&nbsp;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;\u83b7\u53d6ticket\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;returns&gt;&lt;\/returns&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;getTicket()&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;string&nbsp;ticket&nbsp;=&nbsp;null;\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\/\/&nbsp;\u5224\u65ad\u662f\u5426\u5b58\u5728\u6216\u8fc7\u671f\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(File.Exists(ticketPath))\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileStream&nbsp;fs&nbsp;=&nbsp;new&nbsp;FileStream(ticketPath,&nbsp;FileMode.Open);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;serializer&nbsp;=&nbsp;new&nbsp;DataContractJsonSerializer(typeof(JsTicket));\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JsTicket&nbsp;readJSTicket&nbsp;=&nbsp;(JsTicket)serializer.ReadObject(fs);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fs.Close();\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FileInfo&nbsp;fi&nbsp;=&nbsp;new&nbsp;FileInfo(ticketPath);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(CheckTimeOut(fi.LastWriteTime)&nbsp;&lt;p&gt;JSon\u5e8f\u5217\u5316\uff0c\u53cd\u5e8f\u5217\u5316&lt;\/p&gt;&lt;p class=\"jb51code\"&gt;&lt;br&gt;&lt;\/p&gt;&lt;pre class=\"brush:csharp;\"&gt;public&nbsp;class&nbsp;JsonEntityExchange&lt;t&gt;&nbsp;where&nbsp;T:new()\r\n&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;summary&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;json\u8f6c\u5b9e\u4f53LIST\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;\/summary&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;param&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;returns&gt;&lt;\/returns&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;List&lt;t&gt;&nbsp;Json2Entitys(string&nbsp;JsonStr)\r\n&nbsp;&nbsp;&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JavaScriptSerializer&nbsp;Serializer&nbsp;=&nbsp;new&nbsp;JavaScriptSerializer();\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List&lt;t&gt;&nbsp;objs&nbsp;=&nbsp;Serializer.Deserialize&lt;list&gt;&amp;gt;(JsonStr);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;objs;\r\n&nbsp;&nbsp;&nbsp;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;summary&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;json\u8f6c\u5b9e\u4f53\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;\/summary&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;param&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;returns&gt;&lt;\/returns&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;T&nbsp;Json2Entity(string&nbsp;json)\r\n&nbsp;&nbsp;&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;T&nbsp;obj&nbsp;=&nbsp;Activator.CreateInstance&lt;t&gt;();\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;using&nbsp;(MemoryStream&nbsp;ms&nbsp;=&nbsp;new&nbsp;MemoryStream(Encoding.UTF8.GetBytes(json)))\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DataContractJsonSerializer&nbsp;serializer&nbsp;=&nbsp;new&nbsp;DataContractJsonSerializer(obj.GetType());\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;(T)serializer.ReadObject(ms);\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;}\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;summary&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;\u5b9e\u4f53\u8f6cjson\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;\/summary&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;param&gt;\u5b9e\u4f53list\r\n&nbsp;&nbsp;&nbsp;&nbsp;\/\/\/&nbsp;&lt;returns&gt;&lt;\/returns&gt;\r\n&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;static&nbsp;string&nbsp;Entity2Json(List&lt;t&gt;&nbsp;lists)&nbsp;{\r\n\r\n&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;new&nbsp;JavaScriptSerializer().Serialize(lists);\r\n&nbsp;&nbsp;&nbsp;&nbsp;}\r\n&nbsp;&nbsp;}&lt;\/t&gt;&lt;\/t&gt;&lt;\/list&gt;&lt;\/t&gt;&lt;\/t&gt;&lt;\/t&gt;<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u7ed3\u679c\u5982\u56fe:<\/p>\n<p style=\"text-align: center\"><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/000\/001\/505\/5f2251d9969cfe9134855e7a489aa9b9-0.jpg\" class=\"aligncenter\" title=\"\u5fae\u4fe1\u516c\u4f17\u53f7\u67e5\u770b\u5173\u6ce8\u8005\u63a5\u53e3\u7684.NET\u5b9e\u4f8b\u6559\u7a0b\u63d2\u56fe\" alt=\"\u5fae\u4fe1\u516c\u4f17\u53f7\u67e5\u770b\u5173\u6ce8\u8005\u63a5\u53e3\u7684.NET\u5b9e\u4f8b\u6559\u7a0b\u63d2\u56fe\" \/><\/p>\n<p>\u4ee5\u4e0a\u5c31\u662f\u5fae\u4fe1\u516c\u4f17\u53f7\u67e5\u770b\u5173\u6ce8\u8005\u63a5\u53e3\u7684.NET\u5b9e\u4f8b\u6559\u7a0b\u7684\u8be6\u7ec6\u5185\u5bb9\uff0c\u66f4\u591a\u8bf7\u5173\u6ce8\u7c73\u4e91\u5176\u5b83\u76f8\u5173\u6587\u7ae0\uff01<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5b9e\u4f53\u7c7b: &nbsp;public&nbsp;class&nbsp;userlist &nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;total&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;count&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;userlistopenid&nbsp;data&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;next_openid&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;} \u767b\u5f55\u540e\u590d\u5236 &nbsp;public&nbsp;class&nbsp;userlistopenid &nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;List&lt;string&gt;&nbsp;openid&nbsp;{&nbsp;get;&nbsp;set; &nbsp;&nbsp;}&lt;\/string&gt; \u767b\u5f55\u540e\u590d\u5236 &nbsp;public&nbsp;class&nbsp;userdetail &nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int&nbsp;subscribe&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;openid&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;nickname&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int&nbsp;sex&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;language&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;city&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;province&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;country&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;headimgurl&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int&nbsp;subscribe_time&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;unionid&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;string&nbsp;remark&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int&nbsp;groupid&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;int[]&nbsp;tagid_list&nbsp;{&nbsp;get;&nbsp;set;&nbsp;} &nbsp;&nbsp;} \u767b\u5f55\u540e\u590d\u5236 getUser.aspx\u4ee3\u7801: nbsp;html&amp;gt; &nbsp;&nbsp;&lt;meta&gt; &nbsp;&nbsp;&lt;meta&gt; &nbsp;&nbsp;&lt;meta&gt; &nbsp;&nbsp;&lt;title&gt;&lt;\/title&gt; &nbsp;&nbsp;&lt;!&#8211; Bootstrap &#8211;&gt; &nbsp;&nbsp;&lt;link&gt; &nbsp;&nbsp;&lt;!&#8211;[if lt IE 9]&gt; &lt;script src=&#8221;\/\/cdn.bootcss.com\/html5shiv\/3.7.2\/html5shiv.min.js&#8221;&gt;&lt;\/script&gt; &lt;script src=&#8221;\/\/cdn.bootcss.com\/respond.js\/1.4.2\/respond.min.js&#8221;&gt;&lt;\/script&gt; &lt;![endif]&#8211;&gt; &nbsp;&nbsp; \u767b\u5f55\u540e\u590d\u5236 &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19],"tags":[],"class_list":["post-29833","post","type-post","status-publish","format-standard","hentry","category-19"],"_links":{"self":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/29833","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/comments?post=29833"}],"version-history":[{"count":0,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/29833\/revisions"}],"wp:attachment":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/media?parent=29833"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/categories?post=29833"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/tags?post=29833"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}