Кажется, мне никогда не удается обновить таблицу мостов, когда я покидаю Entity Framework для автоматического управления сопоставлением.
Классы
public class Tool
{
public Guid Id { get; set; }
public string Name { get; set; } = string.Empty;
public List TargetTypes { get; } = [];
}
public class TargetType
{
public Guid Id { get; set; }
public string Name { get; set; } = string.Empty;
public List Tools { get; } = [];
}
Когда я перехожу на страницу редактирования/инструмента, я хочу иметь возможность изменять целевые типы, с которыми связан инструмент.
Кажется, что при отладке код работает нормально — я загружаю все целевые типы в представление, пользователь может их выбрать и нажать кнопку сохранения. Однако в таблицу мостов ничего не добавляется. В этой статье Entity Framework сообщает, что все это обрабатывается автоматически, поэтому мне не очень хочется создавать собственный класс. Почему моя таблица мостов не обновляется в моей базе данных?
Переменные
[BindProperty]
public Tool Tool { get; set; }
[BindProperty]
public List Targets { get; set; } = new List();
[BindProperty]
public List SelectedTargetTypes { get; set; } = new List();
[BindProperty]
public List TargetTypesList { get; set; } = new List();
Метод OnPost
public async Task OnPostAsync()
{
//we want to update the tool options here
if (!ModelState.IsValid)
{
return Page();
}
//Hnadle the target types
foreach (var type in SelectedTargetTypes)
{
var target = await _context.TargetTypes.FindAsync(type);
if (target != null)
{
Tool.TargetTypes.Add(target);
}
}
_context.Attach(Tool).State = EntityState.Modified;
try
{
await _context.SaveChangesAsync();
}
catch (DbUpdateConcurrencyException)
{
if (!ToolExists(Tool.Id))
{
return NotFound();
}
else
{
throw;
}
}
return RedirectToPage("./Index");
}
CSHTML
Tool Settings
Allowed Targets
@foreach (var targetType in Model.TargetTypesList)
{
@targetType.Text
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... -framework
Обновить таблицу мостов при изменении класса в Entity Framework ⇐ C#
Место общения программистов C#
-
Anonymous
1729646168
Anonymous
[b]Кажется, мне никогда не удается обновить таблицу мостов, когда я покидаю Entity Framework для автоматического управления сопоставлением.[/b]
Классы
public class Tool
{
public Guid Id { get; set; }
public string Name { get; set; } = string.Empty;
public List TargetTypes { get; } = [];
}
public class TargetType
{
public Guid Id { get; set; }
public string Name { get; set; } = string.Empty;
public List Tools { get; } = [];
}
Когда я перехожу на страницу редактирования/инструмента, я хочу иметь возможность изменять целевые типы, с которыми связан инструмент.
Кажется, что при отладке код работает нормально — я загружаю все целевые типы в представление, пользователь может их выбрать и нажать кнопку сохранения. Однако в таблицу мостов ничего не добавляется. В этой статье Entity Framework сообщает, что все это обрабатывается автоматически, поэтому мне не очень хочется создавать собственный класс. Почему моя таблица мостов не обновляется в моей базе данных?
Переменные
[BindProperty]
public Tool Tool { get; set; }
[BindProperty]
public List Targets { get; set; } = new List();
[BindProperty]
public List SelectedTargetTypes { get; set; } = new List();
[BindProperty]
public List TargetTypesList { get; set; } = new List();
Метод OnPost
public async Task OnPostAsync()
{
//we want to update the tool options here
if (!ModelState.IsValid)
{
return Page();
}
//Hnadle the target types
foreach (var type in SelectedTargetTypes)
{
var target = await _context.TargetTypes.FindAsync(type);
if (target != null)
{
Tool.TargetTypes.Add(target);
}
}
_context.Attach(Tool).State = EntityState.Modified;
try
{
await _context.SaveChangesAsync();
}
catch (DbUpdateConcurrencyException)
{
if (!ToolExists(Tool.Id))
{
return NotFound();
}
else
{
throw;
}
}
return RedirectToPage("./Index");
}
CSHTML
Tool Settings
Allowed Targets
@foreach (var targetType in Model.TargetTypesList)
{
@targetType.Text
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79115878/update-bridge-table-when-class-is-modified-in-entity-framework[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия