小编M E*_*rty的帖子

NHibernate:枚举以列出和存储数据库中的值

我正在使用enum和的自定义Selector类来帮助在单选按钮,下拉菜单,复选框等之间进行选择。我正在使用NHibernate。通过单选(单选按钮,下拉菜单),来自attribute的值[Display(Name = "[Some Text]")]将填充到数据库表中(注意:我使用的是扩展名Display(Name))。但是,对于多个选择(复选框,多列表),我无法弄清楚如何将enum选择的值添加到数据库中。

这是我的模型的各个部分(每个部分都在单独的文件中)(编辑:我为它们指定了通用名称,以免进一步混淆问题):

public enum MyEnum
{
    [Display(Name = "Text for enum1")]
    enum1,
    //Left out 2 - 10 for brevity
    [Display(Name = "Text for enum10")]
    enum10
}
...
public class MyEnumSelectorAttribute : SelectorAttribute
{
    public override IEnumerable<SelectListItem> GetItems()
    {
        return Selector.GetItemsFromEnum<MyEnum>();
    }
}
...
[Display(Name = "This is a checkboxlist (select one or more check boxes)?")]
[MyEnumSelector(BulkSelectionThreshold = 10)]
public virtual List<string> MyEnumCheckBox { get; set; }
... …
Run Code Online (Sandbox Code Playgroud)

nhibernate asp.net-mvc-3

3
推荐指数
1
解决办法
1210
查看次数

"无法创建接口实例"(Orchard CMS中的MvC 3向导)

基于asp.net mvc(拆分视图模型,单一模型)多步注册过程问题的优秀答案,我使用了Darin Dimitrov提供的示例来测试ASP.net MVC3向导.它独立运行,但不在Orchard CMS v1.3中.

我收到以下错误:


'/'应用程序中的服务器错误.

无法创建接口的实例.

描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.

异常详细信息:System.MissingMethodException:无法创建接口的实例.

来源错误:

在执行当前Web请求期间生成了未处理的异常.可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息.

堆栈跟踪:

[MissingMethodException:无法创建接口的实例.]
System.RuntimeTypeHandle.CreateInstance(RuntimeType类型,Boolean publicOnly,Boolean noCheck,Boolean&canBeCached,RuntimeMethodHandleInternal&ctor,Boolean&bNeedSecurityCheck)+0
System.RuntimeType.CreateInstanceSlow(Boolean publicOnly,Boolean skipCheckThis, Boolean fillCache)+98
System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly,Boolean skipVisibilityChecks,Boolean skipCheckThis,Boolean fillCache)+241 System.Activator.CreateInstance(Type type,Boolean nonPublic)+69
System.Web.Mvc.DefaultModelBinder.CreateModel(ControllerContext controllerContext,ModelBindingContext bindingContext,Type modelType)+199 System.Web.Mvc.DefaultModelBinder.BindComplexModel(ControllerContext controllerContext,ModelBindingContext bindingContext)+572
System.Web.Mvc.DefaultModelBinder.BindModel(ControllerContext controllerContext,ModelBindingContext bindingContext)+449
System.Web. Mvc.ControllerActionInvoker.GetPa rameterValue(ControllerContext controllerContext,ParameterDescriptor parameterDescriptor)+317
System.Web.Mvc.ControllerActionInvoker.GetParameterValues(ControllerContext controllerContext,ActionDescriptor actionDescriptor)+117
System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext,String actionName)+343
System.Web. Mvc.Controller.ExecuteCore()+116
System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext)+97 System.Web.Mvc.ControllerBase.System.Web.Mvc.IController.Execute(RequestContext requestContext)+10
System.Web .Mvc.<> c__DisplayClassb.b__5()+37
System.Web.Mvc.Async.<> c__DisplayClass1.b__0()+21
System.Web.Mvc.Async.<> c__DisplayClass8 1.<BeginSynchronous>b__7(IAsyncResult _) +12 System.Web.Mvc.Async.WrappedAsyncResult1.End()+ 62 System.Web .Mvc.<> c__DisplayClasse.b__d()+50
System.Web.Mvc.SecurityUtil.b__0(Action f)+7 …

orchardcms asp.net-mvc-3

2
推荐指数
1
解决办法
1万
查看次数

任何样本MVC3向导应用程序(多步)(NO JQUERY)

我一直在GooglePlex上搜索高/低,这里是一个MVC3向导示例(多步),它不会调用MVC3(和jQuery)的clientsidevalidation元素.我在这里看到了至少一个关于某些元素的详细解释:asp.net mvc中的多步注册过程问题(splitted viewmodels,single model),但是我无法让它正常工作.

作为MVC3的新手和一般的编程,我怀疑它的经验水平阻碍了我的工作.

无论如何,对非Jquery MVC3向导样本的任何指导都会很棒.先感谢您.

wizard asp.net-mvc-3

1
推荐指数
1
解决办法
6059
查看次数

尝试转换代码以存储逗号分隔的枚举字符串

我正在尝试转换以下内容:

public IEnumerable<string> MyProperty
{
    get
    {
        if (String.IsNullOrWhiteSpace(Record.MyProperty)) return new string[] { };
        return Record
            .MyProperty
            .Split(new[] { '.' }, StringSplitOptions.RemoveEmptyEntries)
            .Select(r => r.Trim())
            .Where(r => !String.IsNullOrEmpty(r));
    }
    set { Record.MyProperty = value == null ? null : String.Join(",", value); }
}
Run Code Online (Sandbox Code Playgroud)

处理一个enum,但我失败了(这是一个词吗?)。

我正在尝试这样的事情:

string.Split(new[] ',', Record.MyProperty).Select
    (r => (MyEnum)Enum.Parse(typeof(MyEnum), r));
Run Code Online (Sandbox Code Playgroud)

进行解析,但再次“严重失败”。

有什么指导吗?谢谢。

更新:

我正在尝试将这些数据保留为string. 因此,如果用户选择四个中的三个enums,它将保存为字符串:“Choice1,Choice2,Choice3”。

上面的代码是一个代理public string MyProperty { get; set; }

.net c# enums

1
推荐指数
1
解决办法
3313
查看次数

使用部分视图的对象引用错误

我正在获得无处不在的"对象引用"错误,并且不知道如何解决它.我认为这与调用局部视图有关.我正在使用jquery向导,因此部分视图是向导中显示的"步骤".

在我的主.cshtml视图中,我这样做(我忽略了HTML):

@using MyNamespace.Models
@using MyNamespace.ViewModels
@model MyViewModel
...
...
using (Html.BeginForm())
{
    ...
    // this works inside MAIN view (at least it goes through 
    // before I get my error)
    if (Model.MyModel.MyDropDown == DropDownChoice.One)
    {
         //display something
    }
    ...
    // here i call a partial view, and in the partial view (see
    // below) I get the error
    @{ Html.RenderPartial("_MyPartialView"); }
    ...
}
Run Code Online (Sandbox Code Playgroud)

上面的工作(至少它在我得到我的错误之前通过).

这是我的部分视图(再次,省略HTML):

@using MyNamespace.Models
@using MyNamespace.ViewModels
@model MyViewModel
....
// I get the object …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc asp.net-mvc-3 asp.net-mvc-4

0
推荐指数
1
解决办法
186
查看次数