#c# #.net #entity-framework #linq-to-sql #primary-key
#c# #.net #entity-framework #linq-to-sql #primary-key
Вопрос:
У меня есть приведенные ниже данные в таблице базы данных «Город» без первичного ключа
CityId CityName
1 ABC
1 XYZ
Я использую entityframework для извлечения этих данных, и я получаю ту же строку.
Ниже приведен код контекстного класса
public class StudentsDbContext :DbContext
{
public DbSet<City> cities { get; set; }
}
Ниже приведен код класса City
[Table("City")]
public class City
{
[Key]
public int CityId { get; set; }
public string CityName { get; set; }
}
Ниже приведен выходной код
StudentsDbContext studentsDbContext = new StudentsDbContext();
List<City> cities = studentsDbContext.cities.ToList();
foreach (var val in cities)
{
Console.WriteLine("studentName: " val.CityName);
}
Console.ReadLine();
Ниже приведено выходное изображение
введите описание изображения здесь
Ниже приведен желаемый результат
CityName: ABC
CityName: XYZ
Комментарии:
1. Что вы пробовали? что не работает?
2. Вам также нужно использовать
DefaultIfEmpty
, если вы хотите выполнить левое соединение.3. Используйте левое внешнее соединение : learn.microsoft.com/en-us/dotnet/csharp/language-reference /…
4. Я обновил свою проблему, которую я нашел, пожалуйста, помогите мне с этим
5. Я рад, что вы отредактировали сообщение, но в настоящее время у вас нет никаких вопросов в новом сообщении. Перед тем, как сообщение было отредактировано, вы упомянули левое внешнее соединение. Вы все еще готовы это сделать? Если да, я могу помочь.