My C # Приложение использует списки для соединения таблиц баз данных и обновления, удаления и создания их. Но когда я хочу изменить отношения. Это ошибки. Я чувствую, что это как-то связано со свойствами 'a' и 'w', используемыми в циклах foreach
. Так как они выдают эту ошибку при использовании инструмента отладки: a.id=error CS0103:
Имя 'a' не существует в текущем контексте
. Было бы неплохо, если бы вы оставили ответ простым, поскольку я не очень разбираюсь в C #.
Я использую Windows 10 со студией управления Microsoft SQL.
public void Save(Company company)
{
using (WebsiteDBEntities1 db = new WebsiteDBEntities1())
{
var dbCompany = db.Companies.Include("Developers").Include("Websites").SingleOrDefault(c => c.id == company.id) ?? new Company();
dbCompany.name = company.name;
dbCompany.location = company.location;
dbCompany.revenue = company.revenue;
dbCompany.founded_in = company.founded_in;
//Developers
dbCompany.Developers.Clear();
foreach (Developer developer in company.Developers)
{
dbCompany.Developers.Add(db.Developers.Single(a => a.id == developer.id));
}
//Websites
dbCompany.Websites.Clear();
foreach (Website website in company.Websites)
{
dbCompany.Websites.Add(db.Websites.Single(w => w.id == website.id));
}
db.Companies.AddOrUpdate(dbCompany);
db.SaveChanges();
}
}