【问题标题】:Error while creating partial classes with LLBLGenPro使用 LLBLGenPro 创建部分类时出错
【发布时间】:2011-04-12 11:44:28
【问题描述】:

我只是试图为工具生成的 LLBLGenPro(部分)类声明部分类,以便我可以使用 DataAnnotation 进行验证。但是,这里的情况似乎并不奏效。

以下是我的代码的样子:

namespace MyApp.DataLayer.EntityClasses
{
    [Serializable]
    public partial class LoginEntity : CommonEntityBase, ISerializable
    {
        .....
    }
}

对于 DataAnnotations ...

namespace MyApp.DataLayer.EntityClasses
{
    [MetadataType(typeof(LoginEntityValidation))]
    public partial class LoginEntity
    {

    }

    public class LoginEntityValidation
    {
        [Required(ErrorMessage = "Required !")]
        public string Username { get; set; }
    }
}

// 这给了我编译时错误“MyApp.DataLayer.EntityClasses.LoginEntity' 不包含带 1 个参数的构造函数”等等。

你知道如何让它工作吗?

提前致谢!

【问题讨论】:

    标签: asp.net-mvc llblgenpro data-annotations


    【解决方案1】:

    您不应在视图中使用实体类。您应该使用 ViewModel 类并将验证放在那里。对于实体->视图模型转换,您可以使用AutoMapper

    【讨论】:

    • 感谢您的回复!好的,我已经配置了 AutoMapper。但是我该如何验证我的核心实体呢?基本上,我想将验证属性附加到我的核心实体,以便验证可以在独立于任何特定层的任何地方进行。不过,这适用于 EntityFramework。
    • 我认为混合验证和业务逻辑是个坏主意。您应该将验证逻辑应用于启动数据更改的用户输入,并为业务逻辑保留您的域模型
    猜你喜欢
    • 2016-12-07
    • 1970-01-01
    • 2022-01-24
    • 2020-07-26
    • 1970-01-01
    • 1970-01-01
    • 2020-10-05
    • 1970-01-01
    • 2020-05-15
    相关资源
    最近更新 更多