Я использовал следующую работу:
Шаг 1... Создание необходимых проектов В вашем решении создайте два проекта: 1 - проект приложения (например, приложение, с которым вы работаете, например, приложение Windows Forms) 2 - проект уровня данных (проект библиотеки классов, тот, который делает DLL как результат сборки)
Шаг 2... Связывание проектов В проекте приложения добавьте ссылку на проект в проект уровня данных (ссылки — добавить ссылку — вкладка проекта)
Шаг 3... Создайте свойство в разделяемом классе В проекте уровня данных: - добавьте файл базы данных, если вы используете локальную базу данных - добавьте новый элемент классов Linq to SQL (файл .dbml) - добавьте нужные таблицы в Лист конструктора из проводника сервера — щелкните правой кнопкой мыши один из классов в конструкторе и выберите «Просмотреть код» — вы попадете в файл с уже заполненной частичной информацией о классе. - сделать разделяемый класс общедоступным - создать тестовое свойство, например: public string TEST { get{return "TEST";} } - построить проект уровня данных - теперь вы добавили свойство в разделяемый класс одного из созданных вами дизайнером классов. ..
Шаг 4. Добавьте источники данных. В проекте приложения перейдите на вкладку «Источники данных» и добавьте новый объектный источник данных, выбрав класс, в который вы также добавили свойство частичного класса.
- вы должны увидеть свойство TEST в представлении источников данных...
все сделано
Я думаю, что это работает, потому что наличие файла .dbml и частичного класса в отдельном проекте и доступ через DLL в проекте приложения... заставляет Visual Studio компилироваться и делает все доступным в проекте приложения... в отличие от dll и отдельный временный файл, который, кажется, происходит, когда все находится в одном проекте, оставляя свойства частичного класса вне списка источников данных.
плюс это не так уж плохо .. наличие отдельного проекта для вашего уровня данных позволяет повторно использовать его между проектами .. : D
надеюсь, это работает для кого-то...
person
SpooykLuke
schedule
12.04.2010