使用LINQ获取文本字段的前255个字符
本文关键字:255个 字符 字段 LINQ 获取 取文本 使用 | 更新日期: 2023-09-27 18:14:21
我正在使用LINQ到实体从SQL Server拉数据,我试图从其中一列谁的数据类型是NTEXT
的前255个字符。当我尝试时,我得到错误:
产生错误的代码是:参数数据类型ntext对于len函数的参数1无效
Subject = (yt.Message.Length > 255) ? yt.Message.Substring(0, 255) : yt.Message
是否有一种简单的方法来获得长度,以便我可以检查它,或者只是获得NTEXT
列的前255个字符?
尝试做yt.Message.ToString().Length
给出相同的错误。
这是我正在使用的论坛软件的第三方DB,因为我不知道该系统是如何工作的,我想远离改变任何模式。
在LINQ中似乎没有办法做到这一点,但我最终要做的是创建一个正常的LINQ查询来提取所有数据,然后在ViewModel中放置一个方法,返回我想要的字符数量。
public string Subject
{
get
{
return (yt.Message.Length > 255) ? yt.Message.Substring(0, 255) : yt.Message
}
}
你需要使用一个视图
CREATE VIEW MyView
AS
SELECT MyKey,
LEFT(CONVERT(NVARCHAR(MAX), MyValue), 255) AS MyValueSummary
FROM dbo.MyTable