У меня есть следующий код в .net.гнездо динамический регистр, когда утверждения в sql 2008
foreach (string key in EntityNumbers.Keys)
{
if (EntityNumbers[key] != null)
{
e = new WebServices.Entity();
e.HierarchyLevel = key;
e.Number = EntityNumbers[key];
entities.Add(e);
}
}
Это должно быть преобразовано в SQL в следующем формате.
declare @HierarchyLevelValue int, @HierarchyLevel nvarchar;
SELECT * from table where
CASE
WHEN @HierarchyLevel='COMPANY' THEN COMPANYNUMBER
WHEN @HierarchyLevel='BRANCH' THEN BRANCHNUMBER
WHEN @HierarchyLevel='BUSINESS' THEN BUSINESSNUMBER
END [email protected]
Приведенный выше код будет работать для одного объекта, но как достичь мультипликатор как
SELECT * from table where COMPANYNUMBER=100 AND BRANCHNUMBER= 1
AND BUSINESSNUMBER= 1
я могу сформировать окончательный запрос в виде строки и выполнить с помощью ExecuteSQL. Есть ли какой-либо метод, который позволит избежать формирования строки?
Заранее спасибо.
Я не уверен, что я полностью следую. Можете ли вы включить некоторые примеры данных и то, что вы ожидаете назад? –