У меня есть некоторый код:C# ExecuteQuery нулевое значение
using (OAZISDBDataContext ctx = new OAZISDBDataContext())
{
IEnumerable<DBContactDetail> details = ctx.ExecuteQuery<DBContactDetail>("exec [dbo].[zna_contact] {0}, {1}",
"test", "19601023",
}
Однако я также хочу, чтобы иметь возможность передавать пустые значения хранимой процедуры, так что просто не использует их.
Теперь с помощью строк это легко, я могу просто передать String.Empty, и он будет работать. Однако, если я хочу передать пустые даты, это проблема.
я явно пытался:
using (OAZISDBDataContext ctx = new OAZISDBDataContext())
{
IEnumerable<DBContactDetail> details = ctx.ExecuteQuery<DBContactDetail>("exec [dbo].[zna_contact] {0}, {1}",
"test", null,
}
Но это не»работа, дает ошибку:
System.Exception: A queryparameter can't be of type System.Object.
После некоторого чтения я узнал, что ExecuteCommand не поддерживает нулевые параметры в то время как spec утверждает, что он должен.
Неужели кто-нибудь столкнулся с этой проблемой и нашел обходное решение?
Благодаря кучу