C# LINQ InsertOnSubmit丢失格式

C# LINQ InsertOnSubmit丢失格式,c#,.net,linq-to-sql,C#,.net,Linq To Sql,我有一个表,它有一个文本类型的可空字段。当我运行InsertOnSubmit()时,它会成功插入,但所有格式都会丢失。具体来说,我正在存储错误的堆栈跟踪。每个条目都被格式化为自己的行,看起来很不错,但是当我从SQL中检索它时,它会丢失所有的crlf4 我还有一些文本字段似乎保留了它们的格式,但它们是使用旧的ADO.NET插入的。如何补救 代码: string[]stacktrace=Environment.stacktrace.Replace(“\r”,”).Replace(“\n”,”).Re

我有一个表,它有一个文本类型的可空字段。当我运行InsertOnSubmit()时,它会成功插入,但所有格式都会丢失。具体来说,我正在存储错误的堆栈跟踪。每个条目都被格式化为自己的行,看起来很不错,但是当我从SQL中检索它时,它会丢失所有的crlf4

我还有一些文本字段似乎保留了它们的格式,但它们是使用旧的ADO.NET插入的。如何补救

代码:

string[]stacktrace=Environment.stacktrace.Replace(“\r”,”).Replace(“\n”,”).Replace(“at”,“\n”).Split(“\n”);
字符串堆栈=”;
对于(int i=0;i
请注意,如果我调试到应用程序中,err.StackTrace和stack在SubmitChanges()前后看起来都是正确的

错误定义:

[Column(Storage="_ID", AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
public int ID // ...
[Column(Storage="_AID", DbType="Int")]
public System.Nullable<int> AID // ...
[Column(Storage="_Severity", DbType="TinyInt NOT NULL")]
public byte Severity
[Column(Storage="_Product", DbType="TinyInt NOT NULL")]
public byte Product
[Column(Storage="_Location", DbType="VarChar(255) NOT NULL", CanBeNull=false)]
public string Location
[Column(Storage="_Title", DbType="VarChar(255) NOT NULL", CanBeNull=false)]
public string Title
[Column(Storage="_Ex", DbType="Text", UpdateCheck=UpdateCheck.Never)]
public string Ex
[Column(Storage="_Notes", DbType="Text", UpdateCheck=UpdateCheck.Never)]
public string Notes
[Column(Storage="_datetime", DbType="DateTime NOT NULL")]
public System.DateTime datetime
[Column(Storage="_InnerException", DbType="Text", UpdateCheck=UpdateCheck.Never)]
public string InnerException
[Column(Storage="_StackTrace", DbType="Text", UpdateCheck=UpdateCheck.Never)]
public string StackTrace

[Association(Name="Activity_Error", Storage="_Activity", ThisKey="AID", IsForeignKey=true)]
public Activity Activity
[Column(Storage=“\u ID”,AutoSync=AutoSync.OnInsert,DbType=“Int NOT NULL IDENTITY”,IsPrimaryKey=true,IsDbGenerated=true]
公共整数ID/。。。
[Column(Storage=“_-AID”,DbType=“Int”)]
公共系统。可为空的辅助/。。。
[Column(Storage=“\u Severity”,DbType=“TinyInt NOT NULL”)]
公共字节严重性
[Column(Storage=“\u Product”,DbType=“TinyInt NOT NULL”)]
公共字节积
[Column(Storage=“\u Location”,DbType=“VarChar(255)NOT NULL”,CanBeNull=false]
公共字符串位置
[Column(Storage=“\u Title”,DbType=“VarChar(255)NOT NULL”,CanBeNull=false]
公共字符串标题
[列(Storage=“_Ex”,DbType=“Text”,UpdateCheck=UpdateCheck.Never)]
公共字符串
[Column(Storage=“_Notes”,DbType=“Text”,UpdateCheck=UpdateCheck.Never)]
公共弦乐
[Column(Storage=“\u datetime”,DbType=“datetime NOT NULL”)]
public System.DateTime日期时间
[Column(Storage=“\u InnerException”,DbType=“Text”,UpdateCheck=UpdateCheck.Never)]
公共字符串内部异常
[Column(Storage=“\u StackTrace”,DbType=“Text”,UpdateCheck=UpdateCheck.Never)]
公共字符串堆栈跟踪
[关联(Name=“Activity\u Error”,Storage=“\u Activity”,ThisKey=“AID”,IsForeignKey=true)]
公共活动

您确定您用来查看错误的任何内容都没有删除空白吗?对于intance,任何web浏览器都将忽略\r\n

您没有显示错误的定义,因此很难看到发生了什么

编辑:


在我看来,问题在于您以后如何查看数据。如何确定格式错误?

您是否确实尝试使用Studio Manager查看SQL数据库,并查看数据库中实际存储的内容。通过查看那里的数据,您知道存储数据或检索数据是否有问题


我认为问题在于数据的检索。

Error是Linq创建的与我的Errors表相对应的类。我正在使用SQLServerManagementStudio。我理解这一点,但我仍然不知道它的定义是什么。你不能提供这些信息。
[Column(Storage="_ID", AutoSync=AutoSync.OnInsert, DbType="Int NOT NULL IDENTITY", IsPrimaryKey=true, IsDbGenerated=true)]
public int ID // ...
[Column(Storage="_AID", DbType="Int")]
public System.Nullable<int> AID // ...
[Column(Storage="_Severity", DbType="TinyInt NOT NULL")]
public byte Severity
[Column(Storage="_Product", DbType="TinyInt NOT NULL")]
public byte Product
[Column(Storage="_Location", DbType="VarChar(255) NOT NULL", CanBeNull=false)]
public string Location
[Column(Storage="_Title", DbType="VarChar(255) NOT NULL", CanBeNull=false)]
public string Title
[Column(Storage="_Ex", DbType="Text", UpdateCheck=UpdateCheck.Never)]
public string Ex
[Column(Storage="_Notes", DbType="Text", UpdateCheck=UpdateCheck.Never)]
public string Notes
[Column(Storage="_datetime", DbType="DateTime NOT NULL")]
public System.DateTime datetime
[Column(Storage="_InnerException", DbType="Text", UpdateCheck=UpdateCheck.Never)]
public string InnerException
[Column(Storage="_StackTrace", DbType="Text", UpdateCheck=UpdateCheck.Never)]
public string StackTrace

[Association(Name="Activity_Error", Storage="_Activity", ThisKey="AID", IsForeignKey=true)]
public Activity Activity