C# SQLQuery未捕获泛型类型字段的CRLF

C# SQLQuery未捕获泛型类型字段的CRLF,c#,sql-server,entity-framework-6,xaf,C#,Sql Server,Entity Framework 6,Xaf,我有以下代码(简化) 并确保数据具有CRLF组合。 我注意到结构是varchar而不是nvarchar 我的应用程序是Winforms 我尝试在Ubuntu和windows上运行SQL Express [更新] 总是学习是正确的。英孚似乎正在剥离车厢返回。 我更新了业务对象类以显示。 当返回I记录时,问题不在sql中 我还添加了xaf作为标记,因为我正在使用它,尽管很难看出它是如何涉及的 无论#temp描述是varchar还是nvarchar,都会出现此问题 无论其他表中的字段是varchar还

我有以下代码(简化)

并确保数据具有CRLF组合。 我注意到结构是varchar而不是nvarchar

我的应用程序是Winforms 我尝试在Ubuntu和windows上运行SQL Express

[更新]
总是学习是正确的。英孚似乎正在剥离车厢返回。 我更新了业务对象类以显示。 当返回I记录时,问题不在sql中

我还添加了xaf作为标记,因为我正在使用它,尽管很难看出它是如何涉及的

无论#temp描述是varchar还是nvarchar,都会出现此问题


无论其他表中的字段是varchar还是nvarchar,都会出现此问题

是否100%确定数据包含这些字符?是否在Linux或macOS上运行此操作?EF6是否可能通过将
\r\n
序列转换为
\n
序列来“帮助”您?(我没想到会这样,但谁知道呢?)谢谢你。我更新了问题。英孚似乎在“帮助”
 private  List<T> GetList<T>( )
        where T : MyResult, new()
    {
        var db = new MyDbContext();
        var sql = @$"
        SET NOCOUNT ON;
        create table #temp ( Description nvarchar(800) )
        insert into #temp (Description) select Description from SomeOtherTable
        select description from #temp 
        where charindex(char(13),description) > 0 and 
              charindex(char(10),description) > 0
        "
        return db.Database.SqlQuery<T>(sql).ToList();
    }


    public override IEnumerable<NonPersistentObjectBase> MyGetData()
    {
        var t = GetType();
        var o = Activator.CreateInstance(t) as MyRec;
        return o.GetList<MyResult>(t).Cast<NonPersistentObjectBase>().ToList();
    }



 public class MyResult : NonPersistentObjectBase {
    [ModelDefault("RowCount", "5")]
    public string Description { get; set; }
    public bool HasCrLf => Description.Contains( "\r\n");
    public bool HasCr => Description.Contains("\r"); // returns false
    public bool HasLf => Description.Contains("\n"); // returns true
    
 }
select top 10 description, charindex(char(13),description) as PosCR,charindex(char(10),description) as PosLF from someothertable