2016-03-29 7 views
0

В настоящее время я создаю сайт MVC с использованием Entity Framework. Я создал следующий класс:MVC Entity Framework Игнорировать класс/модель

using System; using System.Collections.Generic; 
using System.Linq; using System.Web; 
using System.ComponentModel.DataAnnotations.Schema; 
using System.ComponentModel.DataAnnotations; 
using System.ComponentModel; 

namespace .Models { 

    public class VehicleTableData 
    { 
     [NotMapped] 
     public Dictionary<string,string> StandardVehicleData { get; set; } 

     [NotMapped] 
     public Dictionary<string,string> AdditionalData { get; set; } 
    } } 

Однако, я хотел бы, чтобы это было проигнорировано Entity Framework, как когда я пытаюсь создать представление с ним я получаю ошибку, что нет никакого действительного ключа.

enter image description here

+2

Вы определяете 'public DbSet VehicleTableDatas {get; задавать; } 'в вашем' DbContext'? –

+0

да :(спасибо, это была поздняя ночь! – Lacko

+0

Ха, да, у нас все есть. Я добавлю в качестве ответа :) –

ответ

1

Если у вас есть класс, определенный в вашем DbContext с помощью следующей строки кода:

public DbSet<VehicleTableData> VehicleTableDatas { get; set; } 

Это приведет к Entity Framework включает класс. Как только вышеуказанная строка будет удалена, она не будет включена.

Вы также можете удалить атрибуты [NotMapped], так как это применимо только к свойствам, которые вы не хотите сохранять в базе данных в модели, включенной в ваш DbContext.

Смежные вопросы