实体框架4.3 beta [Column(TypeName)]问题,无法创建xml类型的列

E.L*_*unn 13 .net c# entity-framework

我知道这是一个测试版(刚刚检查了新版本的EF 4.3并且它做了同样的事情)发布并且某些功能可能会丢失,但我没有看到任何解释原因...

[Column(TypeName = "xml")]
public string SomeProperty { get; set; }
Run Code Online (Sandbox Code Playgroud)

...当使用EF 4.3(列创建为nvarchar(max))时,不再创建xml类型的列,我已经尝试了EF 4.2并且创建了列就好了.仅供参考我连接到sql server 2008r2并且还尝试了快递版.我使用XML来存储不断变化的数据模式的数据,并且我理解这将作为字符串传回我需要能够针对sql中的xml数据创建存储过程.我也尝试使用.HasDataType( )方法没有运气.

另外,我可以创建varchar并且我相信nchar类型,但不是ntexttext使用相同方法的类型.

所以我真正的问题是:

  1. 我应该能够在EF 4.3中创建xml类型的列吗?
  2. 为什么我不能?
  3. 有没有正确的方法/解决方法来实现这一目标?

div*_*ega 3

感谢您的报告。我们已将其确定为 EF 4.3 中的意外重大更改。更改的原因是我们将 DDL 生成切换为在 SQL Server 数据库的 Code First 迁移中使用新引擎,并且 Code First 迁移当前不支持所有可能的数据库数据类型。我们计划在几周后在 EF 4.3.1 中修复此问题。