Я делаю проект с C # winforms. Этот проект состоит из:
альтернативный текст http://img139.imageshack.us/img139/2540/esquemaw.png
- Клиентский проект: Windows Forms, где пользователь будет вызывать операции CRUD;
- Серверный проект;
- Общий проект: Этот проект будет содержать модели (на изображении есть только модель элемента);
- Проект ListSingleton: Удаленный объект, который будет выполнять операции с моделями;
Я пытаюсь использовать стиль из 3 слоев, в котором КЛИЕНТ и СЕРВЕР будут слоями представления , LISTSINGLETON будет контроллерным слоем (где создаются все объекты) , и ОБЩИЙ проект - это слой моделей ...
У меня уже все коммуникации работают, но теперь мне нужно поработать над сохранением данных в базе данных mysql. Я пытался использовать nHibernate, но у меня возникли некоторые проблемы.
Моя главная проблема заключается в том, как организовать мою конфигурацию гибернации.
- В каком проекте я храню карту? Общий проект?
В каком проекте я сохраняю файл конфигурации Hibernate (App.config)? Проект ListSingleton?
В каком проекте я делаю это:
Configuration cfg = new Configuration();
cfg.AddXmlFile("Item.hbm.xml");
ISessionFactory factory = cfg.BuildSessionFactory();
ISession session = factory.OpenSession();
ITransaction transaction = session.BeginTransaction();
Item newItem = new Item("BLAA");
// Tell NHibernate that this object should be saved
session.Save(newItem);
// commit all of the changes to the DB and close the ISession
transaction.Commit();
session.Close();
В проекте ListSingleton? Хотя у меня была ссылка на Общий проект в ListSingleton, я продолжаю получать сообщение об ошибке в строке addXml…
- И когда у меня есть 2 проекта, один с моделями и отображениями, а другой, где я использую спящий режим (этот проект имеет ссылку на проект моделей), как мне сделать "cfg.AddXmlFile (" User.hbm.xml " );» Я продолжаю получать сообщение «Не удалось настроить хранилище данных из файла User.hbm.xml», когда я использую эту структуру проекта 2.
Мое сопоставление правильное, потому что я пытался с помощью одного проекта, и он работал: X