当我运行此代码并在SQL Server Profiler中观看时,没有返回值
exec [dbo].[p_PersonelEkleAgiGetir]
@MedeniDurum = N'Evli',
@CocukSayisi = 0,
@EsCalismaDurumu = N'Çalışmıyor'
我从参数前面删除了N
,然后就可以了。我需要做些什么才能在代码中工作?
这是我的实体程序代码
public virtual ObjectResult<Nullable<decimal>> p_PersonelEkleAgiGetir(string medeniDurum, Nullable<int> cocukSayisi, string esCalismaDurumu)
{
var medeniDurumParameter = medeniDurum != null ?
new ObjectParameter("MedeniDurum", medeniDurum) :
new ObjectParameter("MedeniDurum", typeof(string));
var cocukSayisiParameter = cocukSayisi.HasValue ?
new ObjectParameter("CocukSayisi", cocukSayisi) :
new ObjectParameter("CocukSayisi", typeof(int));
var esCalismaDurumuParameter = esCalismaDurumu != null ?
new ObjectParameter("EsCalismaDurumu", esCalismaDurumu) :
new ObjectParameter("EsCalismaDurumu", typeof(string));
return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction<Nullable<decimal>>("p_PersonelEkleAgiGetir", medeniDurumParameter, cocukSayisiParameter, esCalismaDurumuParameter);
}
答案 0 :(得分:1)
如果我理解你的问题,你想知道为什么删除N
s使其运行正常,但N
s不运行。 N
表示该字符串为Unicode
。擦除它们时,该过程接受它,因为它接受非Unicode字符串。您可以在此处查看更多信息: