public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
var key = new Dictionary<string, object>();
key.Add("CPLID", new object());
key.Add("EqID", new object());
key.Add("Shift", new object());
key.Add("DateTime", new object());
key.Add("UpdateDateTime", new object());
key.Add("No", new object());
key.Add("LineStop.Remark", new object());
key.Add("IsRemark", new object());
key.Add("DispatchID", new object());
key.Add("CopperID", new object());
key.Add("CopperLV", new object());
key.Add("InThickness", new object());
key.Add("InWidth", new object());
key.Add("OutWidth", new object());
key.Add("OutLength", new object());
key.Add("OutPiece", new object());
key.Add("WeldingNum", new object());
key.Add("GuideNum", new object());
key.Add("Supply", new object());
key.Add("Produce", new object());
key.Add("ReturnMaterial", new object());
key.Add("StartTime", new object());
key.Add("EndTime", new object());
key.Add("PrelineNum", new object());
key.Add("SelflineNum", new object());
key.Add("ProcessModeNum", new object());
key.Add("ProcessResultNum", new object());
key.Add("ProcessMode[0].CopperID", new object());
key.Add("ProcessMode[0].Mode", new object());
key.Add("ProcessMode[1].CopperID", new object());
key.Add("ProcessMode[1].Mode", new object());
key.Add("ProcessMode[2].CopperID", new object());
key.Add("ProcessMode[2].Mode", new object());
key.Add("ProcessMode[3].CopperID", new object());
key.Add("ProcessMode[3].Mode", new object());
//key.Add("ProcessMode[4].CopperID", new object());
//key.Add("ProcessMode[4].Mode", new object());
DictionaryValueProvider<object> ob = new DictionaryValueProvider<object>(key, CultureInfo.CurrentCulture);
Assert.IsTrue(ob.ContainsPrefix("ProcessMode"));
}
}
以上在 MVC3 中运行的示例测试代码是有效的。但是,“ContainsPrefix”方法在 MVC3 中很好,但在 MVC4 中不能正常工作。
然后,当我尝试添加更多项目时。ProcessMode[4].CopperID
和(删除评论)之类的东西
ProcessMode[4].Mode
。它在 MVC4 上工作正常。
我觉得很奇怪,</p>
该问题有时会出错:“发布带有 json 内容的 ajax”并且DefaultModelBinder
它会产生一个错误的数据。
ContainsPrefix
MVC3 和 MVC4 中的方法是否不同?
12/7 更新
http://forums.asp.net/t/1856357.aspx/1?FormValueProvider+skips+form+values
同样的问题,它让我无法使用 MVC4
使用“二进制搜索”搜索前缀字符串
制作“。” 和 '[' 跳过匹配