我无法在MS Visual Studio的Locals窗口中看到局部变量result
,所有其他变量及其类型都显示正常。
控制已在第33行,但我看不到第29行的效果(参见图像)
第28和29行的代码
let dataContractJsonSerializer = new DataContractJsonSerializer(typeof<List[]>)
let result = (dataContractJsonSerializer).ReadObject(memoryStream) :?> List[]
编辑 - 根据更多代码的请求
[<DataContract>]
type List= {
[<field: DataMemberAttribute(Name="href") >]
Href: string
}
服务电话
let response = request.GetResponse() :?> HttpWebResponse
use reader = new StreamReader(response.GetResponseStream())
use memoryStream = new MemoryStream(Encoding.UTF8.GetBytes(reader.ReadToEnd()))
let result = (new DataContractJsonSerializer(typeof<List[]>)).ReadObject(memoryStream) :?> List[]
答案 0 :(得分:1)
更新:由于优化,它似乎没有出现。
引自https://msdn.microsoft.com/en-us/library/aa309368(v=vs.71).aspx:&#34;优化的效果是删除与变量z相关的代码,该代码从未使用过。另请注意,Locals窗口不包含变量z的节点。&#34;
private void InitializeComponent() {
...
int j = 10, k = 20, z = 0;
for (int i = 0; i < 10; i++) {
z = j+k;
btnNumbers[i].Size = new Size(30, 30);
btnNumbers[i].Click += new System.EventHandler(btnNumbersClicked);
}
...
如果可以的话,请粘贴完整的代码而不是仅仅两行。
话虽如此,这对我有用。你可能遗漏了班上的DataContracts
和DataMember
。