早上好.遇到了其他人实现的代码,我不知道如何使用FormCollection.FormCollection只是表单上控件的集合吗?
public Email(FormCollection fc)
{
StringBuilder sb = new StringBuilder();
this.fc = fc;
string[] keys = fc.AllKeys;
sb.Append("Category,\"REQUEST\",<br />");
sb.Append("Type,\"TEST EXPRS\",<br />");
}
Run Code Online (Sandbox Code Playgroud)
在这个特定的代码片段中,它不被使用,完全没有必要作为参数.
我个人从不在ASP.NET MVC应用程序中使用FormCollection.我总是喜欢定义视图模型并让控制器操作将此视图模型作为参数.其属性将由默认模型绑定器自动填充.例如:
public class MyViewModel
{
public string Property1 { get; set; }
public int Property2 { get; set; }
...
}
Run Code Online (Sandbox Code Playgroud)
然后:
public Email(MyViewModel model)
{
// use the view model here
...
}
Run Code Online (Sandbox Code Playgroud)
但回到你的问题:FormCollection表示所有POSTed值的键值对.它是弱类型的,值总是字符串意味着如果你想操纵它们,你必须手动将它们转换为它们的底层类型.尽量避免它.
| 归档时间: |
|
| 查看次数: |
4794 次 |
| 最近记录: |