code first中Entity和Entity有区别吗

aierda 2019-09-17 08:14:48
code first中Entity<string>和Entity<Guid>有区别吗?
我目前使用Entity<string>作为主键,生成新记录时,主键也是guid形式,
我有必要换成Entity<Guid>吗?
唯一不爽的是,使用Entity<string>生成的数据库表的主键的长度默认变成450

...全文
273 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
aierda 2019-10-06
  • 打赏
  • 举报
回复
谢谢指点!
大鱼> 2019-09-21
  • 打赏
  • 举报
回复
不是一个东西,即便是处理方式可能类似但是底层结构肯定不一样的
XBodhi. 2019-09-21
  • 打赏
  • 举报
回复
string 和 guid 是不一样的, 一个是结构体一个是 密封类。 对于数据是可以自己动处理的, 但是 需要类型上的 特殊化。
XBodhi. 2019-09-19
  • 打赏
  • 举报
回复
只是一个普通的泛型应用而已。 你可以 看看 Entity<T> F12
aierda 2019-09-18
  • 打赏
  • 举报
回复
引用 6 楼 mirrorleo 的回复:
直接把450改成40不行么?
引用 5 楼 aierda 的回复:
那怎样设置主键id的默认长度为40呢,如果使用Entity<string>的话
不是要手动在数据库中改,而是code first创建数据库表的时候,可以指定默认的大小
mirrorleo 2019-09-18
  • 打赏
  • 举报
回复
直接把450改成40不行么?
引用 5 楼 aierda 的回复:
那怎样设置主键id的默认长度为40呢,如果使用Entity<string>的话
aierda 2019-09-18
  • 打赏
  • 举报
回复
那怎样设置主键id的默认长度为40呢,如果使用Entity<string>的话
  • 打赏
  • 举报
回复
如果数据库中支持guid,那就有区别,比如SqlServer,如果不支持,那就无区别,比如MySql
正怒月神 版主 2019-09-18
  • 打赏
  • 举报
回复
正如#2所说的。 数据库应该是uniqueidentifier。 至于uniqueidentifier和nvarchar的索引速度比较,就不清楚了。 需要一个dba来解答一下。
mirrorleo 2019-09-18
  • 打赏
  • 举报
回复
那你就把ID 类型定义为uniqueidentifier呗
exception92 2019-09-18
  • 打赏
  • 举报
回复
就形式来说没什么区别存入数据库也是字符形式。code first 主键就自己指定吧,包括名称以及其它特性等。

62,073

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧