Пытаюсь понять класс - PullRequest
0 голосов
/ 04 мая 2011

Я пытаюсь понять концепцию класса, когда я использую DB, (MVC 3) добавление класса с использованием одного и того же имени любой из моей таблицы БД всегда дает мне ошибку, говоря Отсутствует частичный модификатор при объявлении типа MySite.Models.computers '; существует другое частичное объявление этого типа, так как мне это сделать? Я пытаюсь сделать что-то вроде этого:

public  class computers 
{
    public int ID { get; set; }
    // public IEnumerable<computers> computers { get; set; }
    // i would like to have this parameter a IEnumerable <price>
    // -in my db this is a string 
}

Ответы [ 2 ]

1 голос
/ 04 мая 2011

Вы используете какой-то инструмент (Entity Framework, Linq-to-SQL и т. Д.), Который генерирует класс для вас.Он будет сгенерирован как частичный класс, подобный следующему:

public partial class computers { ... }

Причина, по которой он это делает, заключается в том, что вы можете захотеть включить некоторую логику в этот класс.Таким образом, инструмент делает его partial, а затем вы можете определить другой класс partial в той же папке.Компилятор объединит их для вас во время сборки.

Однако, если вы попытаетесь создать другой класс в той же папке с именем computer, не определяя его как partial, это ошибка.Вы не можете иметь два класса с одинаковыми именами в одной папке (пространстве имен).Тем не менее, два partial класса найдены, потому что после объединения они действительно являются одним и тем же классом.

Я сомневаюсь, что это как-то связано с MVC.

1 голос
/ 04 мая 2011

Звучит так, как будто у вас уже есть контекст базы данных LinqToSql в вашем проекте.

изменение

    public  class computers 
    {
...
    }

на

public partial class computers 
{
...
}

позволит построить ваш проект, но бездальнейшая информация, трудно сказать, действительно ли это то, что вы пытаетесь сделать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...