我在VS2012中有一个大型MVC4应用程序,其中控制器函数返回简单的动态对象(作为JSON)到jQuery $.post函数。
看起来编译器将具有相同属性定义(但不同大小写)的对象合并为同一对象。这会导致在尝试在JavaScript中读回属性时出现问题。
Dim js As New System.Web.Script.Serialization.JavaScriptSerializer()
'should return {"TEST":true} and does
MessageBox.Show(js.Serialize(New With {.TEST = True}))
' should return {"test":true} but returns {"TEST":true} if the above code exists.
MessageBox.Show(js.Serialize(New With {.test = True}))
由于项目庞大,开发人员众多,因此不总是实际可行的扫描代码以查找此问题的实例。
有没有办法防止这种优化?