FineUI 官方论坛

标题: 数据库的数据类型为什么都是nvarchar(max)的啊? [打印本页]

作者: zpfzpf384    时间: 2014-3-27 20:20
标题: 数据库的数据类型为什么都是nvarchar(max)的啊?
我用appbox 4.0建立的数据库里有我自己定义的两个表,为什么字符串数据类型都是nvarchar(max)啊?我在Models文件夹下的.cs的类里面已经定义了数据类型和长度了啊。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
//------------------------------------------------------------------------------
// <auto-generated>
//    此代码是根据模板生成的。
//
//    手动更改此文件可能会导致应用程序中发生异常行为。
//    如果重新生成代码,则将覆盖对此文件的手动更改。
// </auto-generated>
//------------------------------------------------------------------------------
namespace AppBox
{
  
    public partial class Code : IKeyID
    {
        [Key]
        public int ID { get; set; }
        [Required, StringLength(20)]
        public string 字段 { get; set; }

        [Required, StringLength(20)]
        public string 值 { get; set; }

        [Required, StringLength(4)]
        public string 编码 { get; set; }
    }
}


作者: zpfzpf384    时间: 2014-3-27 20:22
如何在appbox的数据库里新建表啊?新建了表怎么同步到Models的类里面去啊?

作者: zzzzzzzzzzzzzzz    时间: 2014-3-28 01:25
appbox 是EF 6 做的。 用的是  code frist 模式。
如果,你需要改变数据库结构,那么你就需要改变ef 模型结构。
然后,使用ef 迁移功能来更新数据库。

作者: zzzzzzzzzzzzzzz    时间: 2014-3-28 01:27
如果你修改了数据,那么你也可以去找EF 的工具,叫做反向工程工具, 可以把数据库的结构生成成C#代码。不过建议你先去看看EF的教程,如果不深入的话,会遇到很多坑。
作者: zpfzpf384    时间: 2014-3-28 08:38
谢谢您的讲解,但是还有个问题,我明明装了entity frameworks 6.0.2,但是我在添加模型的时候为什么只有EF 5.x DbContext生成器呢?
作者: zpfzpf384    时间: 2014-3-28 08:41
标题: 我已经安装了ef 6.0.2,为什么不能添加的时候还是ef 5.x 生...
本帖最后由 zpfzpf384 于 2014-3-28 08:48 编辑

[attach]4867[/attach]

作者: zpfzpf384    时间: 2014-3-28 08:43
标题: 如图
本帖最后由 zpfzpf384 于 2014-3-28 08:47 编辑

[attach]4866[/attach]

作者: 盼月亮    时间: 2014-3-28 10:10
你可以如此
[DbType("ntext")]
public System.String NewProperty1
    {
      get
      {
        return _newProperty1;
      }
      set
      {
        SetPropertyValue("NewProperty1", ref _newProperty1, value);
      }
    }




欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/) Powered by Discuz! X3.4