MVC Html.EditorFor有类型号,但返回string []

时间:2016-02-19 15:02:42

标签: c# asp.net-mvc-4 binding editorfor

我可能错过了一些我应该知道的东西,但是我对c#和mvc的了解有一些弱点。

问题是我正在尝试创建,除了这个问题,我几乎解决了所有问题。

我在View模型中有这个代码:

public object SettingValue
    {
        get 
        {
            //Some code

            return Convert.ChangeType(value, _type); 
        }
        set 
        {
            ViewModel.Setting = new KeyValuePair<string, object>(ViewModel.Setting.Key, value); 
        }
    }

并在视图中

<div class="form-group">
        @Html.Raw("Value")
        <div class="col-md-10">
            @Html.EditorFor(model => model.SettingValue)
            @*@Html.ValidationMessageFor(model => model.SettingData)*@
        </div>
    </div>

例如,如果SettingValue值是int

的类型,则生成此html
<input class="text-box single-line" id="SettingValue" name="SettingValue" type="number" value="0" />

确切的问题是set中的值应该是int但它返回(ViewModel.Setting.Key, value )不是作为对象或int而是作为字符串[1]返回,其数字为字符串

感谢您的帮助!

0 个答案:

没有答案