Это мой класс:
public class tblProdLine : DBModel
{
[MaxLength(50)]
public string? Name { get; set; }
[ForeignKey("Supervisor")]
public int? SupervisorID { get; set; }
public virtual tblUser? Supervisor { get; set; }
}
В моем окне Prodline.SupervisorID привязан к полю со списком, поэтому, когда пользователь выбирает нового супервизора, его идентификатор будет сохранен в SupervisorID
код>:
Choose a user...
@foreach (var user in UserViewModel.Items)
{
@user.Name
}
Но поскольку сам супервизор не обновляется, Entity Framework сохраняет исходный супервизор при «Обновлении».
Я подумал об этом изменение установщика SupervisorID в классе Prodline для обновления Supervisor, но действительно ли это единственный способ?
Изменить:
мой код «Put»:
private readonly HttpClient _httpClient;
public DbApiClientService(ApiClientOptions apiClientOptions)
{
_httpClient = new HttpClient();
_httpClient.BaseAddress = new Uri(apiClientOptions.ApiBaseAddress);
}
public async Task UpdateItem(T item, int Id)
{
string endpoint = GetEndpointName();
var response = await _httpClient.PutAsJsonAsync($"/api/{endpoint}/{Id}", item);
var responseContent = await response.Content.ReadAsStringAsync();
private string GetEndpointName()
{
return typeof(T).Name;
}
Подробнее здесь: https://stackoverflow.com/questions/788 ... n-property