EFモデルでEFおよびXML coloumnに関する質問があります。EFのXML coloumnに特定の値が含まれていることを確認してください。
多くのフィールドを持つ私のプロジェクトに検索ページがあります。
などint型、文字列などのすべての単純型についても
IQueryable<ServicesRegistration> query = null;
using (SelfServiceEntities context = new SelfServiceEntities())
{
query = context.ServicesRegistrations.Include("BanStatusType").Where(c => c.AppID == "MyApp");
if (filter.RequestStatus != null)
{
if (query == null)
{
query = context.ServicesRegistrations
.Include("BanStatusType")
.Where(c => c.BanStatusType.StatusID == filter.RequestStatus);
}
else
{
query = query.Where(c => c.BanStatusType.StatusID == filter.RequestStatus);
}
}
}
この作品をしかし、私はXMLのcoloumn上で、このような操作を実行しようとするとき、私は例外を取得::私はコードで私の値を交差
のInnerException = { "データ型NVARCHAR、テーブル 'dbo.ServicesRegistrations'、カラム 'MetadataXml' へのデータ・タイプXML から許可されていない暗黙の変換は、このクエリを実行するために、CONVERT関数を使用します。"}
私のコードは次のとおりです。
if (!string.IsNullOrEmpty(filter.SerialNumber))
{
if (query == null)
{
query = context.ServicesRegistrations
.Include("BanStatusType").Where(c => c.MetadataXml.Contains(filter.SerialNumber));
}
else
{
query = query.Where(c => c.MetadataXml.Contains(filter.SerialNumber));
}
}
私はEfの3.5を使用して、私はそれでXMLデータの実装では、いくつかの問題があることを知っています。
誰かがこのような問題を解決していますか? ありがとう