Задание наименований для базы данных
Существует 2 пути для определения наименования:
- во Flexberry Desinger
- в C# коде с помощью атрибутов.
Если выбран первый путь, то Flexberry Desinger сгенерирует соответствующие имена автоматически.
Можно соотнести объекты данных и атрибуты с любым наименованием БД-структуры:
- Имя таблицы для класса (атрибут ClassStorage для класса);
- Имя столбца для атрибута (атрибут PropertyStorage для свойства);
- Имя столбца первичного ключа (Primary key) для идентификатора объекта данных (атрибут PrimaryKeyStorage для класса);
- Имя столбца внешнего ключа (Foreign key) для зависимостей мастера (атрибут PropertyStorage для свойства);
Например, диаграмма DB structures custom naming:
CustomDBOwnClassотносится к таблицеCustomDBOwn;CustomDBOwnClass.CustomOwnAttributeотносится к столбцуCustomOwnв таблицеCustomDBOwn;CustomDBMasterClassотносится к таблицеCustomDBMaster;CustomDBMasterClass.CustomMasterAttributeотносится к столбцу CustomMaster в таблицеCustomDBOwnCustomDBMaster;- Отношение
CustomDBOwnClassкCustomDBMasterClassопределяется в столбцеCustomDBMasterв таблицеCustomDBOwnClass; - Идентификаторы обоих классов относятся к столбцу
pkeyв соответствующих таблицахtables
Достаточно создать объекты и сохранить их.
CustomDBOwnClass cdbo = new CustomDBOwnClass();
CustomDBMasterClass cdbm = new CustomDBMasterClass();
cdbm.CustomMasterAttribute = new RandomStringGenerator().Generate(200);
cdbo.CustomDBMasterClass = cdbm;
cdbo.CustomOwnAttribute = new RandomStringGenerator().Generate(200);
IDataService dataService = DataServiceProvider.DataService;
ICSSoft.STORMNET.DataObject[] objstoupd = new ICSSoft.STORMNET.DataObject[] { cdbo, cdbm };
dataService.UpdateObjects(ref objstoupd);
Console.WriteLine("OK!");
Полный список примеров кода Flexberry ORM находится в статье “Примеры кода”.