Проблема, и я пробовал все подобные сообщения, заключается в том, что когда я попробуйте запросить таблицу, мне сообщат, что возникла ошибка с UserId1. Дело в том, что это поле UserId, и я не понимаю, куда отображается это имя UserId1.
ОШИБКА
Код: Выделить всё
Microsoft.Data.SqlClient.SqlException: 'Invalid column name 'UserId1'.'
Microsoft.Data.SqlClient.SqlException
HResult=0x80131904
Message=Invalid column name 'UserId1'.
Source=Core Microsoft SqlClient Data Provider
StackTrace:
at Microsoft.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at Microsoft.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at Microsoft.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at Microsoft.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
at Microsoft.Data.SqlClient.SqlDataReader.get_MetaData()
at Microsoft.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
at ...
Я использую scaffold для создания модели.
Запрос:
Код: Выделить всё
model = x.Where(x => x.UserId == userId).FirstOrDefault();
Код: Выделить всё
modelBuilder.Entity(entity =>
{
entity.HasIndex(e => e.CompanyId, "IX_CompanyId");
entity.HasIndex(e => e.ExternalIdlHash, "IX_ExternalIdlHash");
entity.HasIndex(e => e.UserId, "IX_UserId");
entity.Property(e => e.Abn).HasColumnName("ABN");
entity.Property(e => e.ExternalId).HasMaxLength(20);
entity.Property(e => e.IsContractor)
.IsRequired()
.HasDefaultValueSql("(CONVERT([bit],(0)))");
entity.Property(e => e.Tfn).HasColumnName("TFN");
entity.HasOne(d => d.Company)
.WithMany(p => p.UserRoles)
.HasForeignKey(d => d.CompanyId)
.HasConstraintName("FK_dbo.UserRoles_dbo.Companies_CompanyId");
entity.HasOne(d => d.User)
.WithMany(p => p.UserRoles)
.HasForeignKey(d => d.UserId)
.OnDelete(DeleteBehavior.ClientSetNull)
.HasConstraintName("FK_dbo.UserRoles_dbo.Users_UserId");
});
Код: Выделить всё
public partial class UserRole
{
public int Id { get; set; }
public DateTime CreatedAt { get; set; }
public int UserId { get; set; }
public int Role { get; set; }
public int? CompanyId { get; set; }
public double? Rate { get; set; }
public string? ExternalId { get; set; }
public int? ExternalIdlHash { get; set; }
public string? Abn { get; set; }
public string? Address { get; set; }
public double? AwardRate { get; set; }
public string? Tfn { get; set; }
public bool? IsContractor { get; set; }
public virtual Company? Company { get; set; }
public virtual User User { get; set; } = null!;
}
Подробнее здесь: https://stackoverflow.com/questions/781 ... id1-part-2