Код: Выделить всё
public class Order
{
public Guid Id { get; set; }
public DateTime createdAt { get; set; }
public int Priority { get; set; }
public Customer Customer { get; set; }
public Vendor Vendor { get; set; }
}
public class Customer
{
public string Name { get; set; }
public string Phone { get; set; }
}
public class Vendor
{
public string Name { get; set; }
public string Phone { get; set; }
}
Я попробовал это решение:
order.HasIndex("VendorName", "CustomerName", "Priority").IsUnique()
< /code>
Но, несмотря на то, что я указываю тип всех столбцов, я получаю эту ошибку в создании миграции: < /p>
Свойство «поставка» не может быть добавлено в тип «Заказ», потому что не было указано тип свойства, и нет соответствующего свойства CLR или поля. Чтобы добавить свойство теневого состояния, должен быть указан тип свойства.order.HasIndex(x => new
{
x.Vendor.Name,
x.Customer.Name
x.Priority
}).IsUnique();
< /code>
Процесс создания миграции повышает эту ошибку: < /p>
Выражение 'x => new f__anonypepe1`3 (vendorname = x.vendor.name, customername = x.customer.name, priory = x.prior. Выражение должно представлять собой простое свойство или доступ к полету: 't => t.myproperty'. При указании нескольких свойств или полей используйте анонимный тип: 't => new {t.myproperty, t.myfield}'. (Параметр 'MemanAccessExpression')
Как я могу создать такой индекс, используя модель Builder в EF Core 7 и .net Core?
Подробнее здесь: https://stackoverflow.com/questions/797 ... t-property
Мобильная версия