代码之家  ›  专栏  ›  技术社区  ›  Rm558

是否可以更改XML类型上的LINQPad代码生成?

  •  0
  • Rm558  · 技术社区  · 7 年前

    在SQL Server中,表可以有XML列

    CREATE TABLE [dbo].[Temp](
        [ID] [int] IDENTITY(1,1) NOT NULL,
        [C1] [xml] NULL
    )
    

    XML列允许多个根内容,将下面的内容放入XML列是合法的

    <a>1</a><a>2</a>
    

    在执行查询时,我遇到了这个错误,

    There are multiple root elements
    

    enter image description here

    我认为错误的原因是CLR数据类型LINQPad/Linq to SQL自动生成。

    public XElement C1;
    

    XElement不允许多个根内容。

    是否可以干预代码生成过程,从而将数据类型更改为字符串?

    public String C1;
    

    顺便说一句,生成的程序集LinqPad位于

    enter image description here

    1 回复  |  直到 7 年前
        1
  •  0
  •   Rm558    7 年前

    可以,使用SQL连接对话框上的高级属性将XML列映射到字符串。

    enter image description here