У меня есть GridView, привязанный к LinqTo Sql -DataSource. Источник данных - это множественное соединение. Мне нужны уникальные ключевые значения для сетки. Но все PrimaryKeys из таблиц могут существовать двойными или нет из-за левых соединений.
Я решил проблему в чистом sql -задаче. Там я создаю идентификатор для TableRows, соединяя два PrimaryKeys и соединяясь с «-». Мне нужен один из идентификаторов для дальнейшей работы с TableRows, другой может быть нулевым.
Так я делаю в SQL -Statement:
select CAST(mitgliedschaft.id as varchar(MAX)) + '-' + CAST(ISNULL(funktion.id, '') as varchar(MAX)) as id from ...... inner join ...... etc
Мне нужны КАСТЫ, чтобы не производить Вычисление с помощью «-» и функции ISNULL, поскольку второй идентификатор может быть пустым.
Теперь мне нужно перенести эту часть сценария в Linq-Statement. Пробовал вот так:
...
...
select new
{
...
id = mitgliedschaft.id.ToString() + "-" + (funktion.id == null ? 0 : funktion.id).ToString()
...
});
Но не запустил его таким образом. Может ли кто-нибудь помочь мне объединить идентификатор с «-» и идентификатор, который может быть NULL? Если это NULL, это должна быть пустая строка или Null-Di git или что-то еще.