C# 在数据库中使用文本数据类型时Webservice中的SqlException

C# 在数据库中使用文本数据类型时Webservice中的SqlException,c#,linq-to-sql,C#,Linq To Sql,我正在用ASP.NET制作一个Web服务 [WebMethod] public List<OfferEntity> TopOffers(int limit) { BabaDingeDataContext babadinge = new BabaDingeDataContext(); List<OfferEntity> hotOffers = ( from h in babadinge.Offers orderby h.vie

我正在用ASP.NET制作一个Web服务

[WebMethod]
public List<OfferEntity> TopOffers(int limit) {
    BabaDingeDataContext babadinge = new BabaDingeDataContext();
    List<OfferEntity> hotOffers = (
        from h in babadinge.Offers
        orderby h.views
        select new OfferEntity { 
            Name = h.name, 
            Location = h.location,
            Description = h.description,
            Date = h.date,
            Tags = h.tags,
            Image = "",
            Views = h.views,
            Price = h.price,
            URL = ""
        }).ToList();

    return hotOffers;
}

public class OfferEntity
{
    public int ID { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public string Location { get; set; }
    public DateTime Date { get; set; }
    public string Tags { get; set; }
    public string Image { get; set; }
    public int Views { get; set; }
    public string Price { get; set; }
    public string URL { get; set; }
}
我在使用Web服务时遇到以下异常:

用户代码未处理System.ServiceModel.FaultException Message=System.Web.Services.Protocols.SoapException:服务器无法运行 处理请求。-->System.Data.SqlClient.SqlException:数据 类型nvarchar和text在add运算符中不兼容。 在System.Data.SqlClient.SqlConnection.OnErrorSqlException中, 布尔断开连接 在


似乎它不喜欢文本数据类型。。。有什么解决办法吗?

这与web服务无关。在控制台应用程序中执行相同的代码,您将得到相同的结果。似乎您试图以某种方式添加/连接nvarchar和文本列。首先:停止使用文本-它已被弃用,并将从未来的SQL Server版本中删除-改用nvarcharmax。若您这样做了,那个么添加的问题可能也会自动消失!Thx,将文本更改为nvarchar使其工作!