System.Data.SqlClient.SqlException: Invalid column name 'Machine_Id'
I have the code of the first db using EF 6.
I faced a similar problem. I tried all the answers but none of them worked.
My objects:
public class UtilizationSummary
{
public DateTime SummaryDate { get; set; }
public Int32 ProcessKey { get; set; }
public virtual ProcessInfo ProcessInfo { get; set; }
public Guid MachineId { get; set; }
public virtual Machine Machine { get; set; }
}
public class ProcessInfo
{
public virtual Machine Machine { get; set; }
public virtual Session Session { get; set; }
}
public class Machine
{
public Guid Id { get; set; }
public String Sid { get; set; }
}
The mappings are as follows:
public class UtilizationSummaryMap: EntityTypeConfiguration<UtilizationSummary>
{
this.HasKey(pus=> new { pus.MachineId, pus.SummaryDate, pus.ProcessKey });
this.Property(pus=> pus.MachineId).IsRequired();
this.HasRequired(pus=> pus.Machine).WithMany().HasForeignKey(ma => ma.MachineId);
}
Access to use:
[HttpGet]
[ODataRoute("UtilizationSummary")]
[EnableQuery]
public IQueryable<UtilizationSummary> FilterUtilizationSummary()
{
var expression = ...some expression..;
var result = db.UtilizationSummary.Where(expression);
return result;
}
The following exception is thrown at 'return result':
"message":"Invalid column name 'Machine_Id'.","type":"System.Data.SqlClient.SqlException"
Printing result
gives:
SELECT
[Extent1].[ProcessKey] AS [ProcessKey],
[Extent1].[MachineId] AS [MachineId],
[Extent1].[SummaryDate] AS [SummaryDate],
[Extent1].[Machine_Id] AS [Machine_Id]
FROM [ProcessUtilizationMinuteSummary] AS [Extent1]
I don't understand why it is trying to access Machine_Id
, although I have given a mapping for the foriegn key.
Thank you in advance:)
+3
source to share
No one has answered this question yet
See similar questions:
or similar: