Сообщение Re[13]: Через год-два .NET Core потеснит Java на рынке enter от 05.05.2020 17:56
Изменено 05.05.2020 18:07 Serginio1
Re[13]: Через год-два .NET Core потеснит Java на рынке enter
Здравствуйте, anton_t, Вы писали:
_> Я тут в мапинге не вижу информации о типах данных на стороне СУБД. Только типы данных в приложении, мапинг на столбцы и валидацию.
Ну ты по ссылке ходил? Там же кроме мапинга имени столбцов еще и типы столбцов
[Column("_CODE",TypeName = "nvarchar")]
По этой схеме при Code First генерятся базы
https://infostart.ru/public/402038/
Там куча примеров
Типы БД nvarchar,nchar,ntext,numeric,DateTime,image
Для описания Decimal для CodeFirst нужны еще приседания, но для BaseFirst и этого предостаточно.
_> Я тут в мапинге не вижу информации о типах данных на стороне СУБД. Только типы данных в приложении, мапинг на столбцы и валидацию.
Ну ты по ссылке ходил? Там же кроме мапинга имени столбцов еще и типы столбцов
[Column("_CODE",TypeName = "nvarchar")]
По этой схеме при Code First генерятся базы
https://infostart.ru/public/402038/
Там куча примеров
public partial class ТабличнаяЧастьПредок
{
virtual public byte[] СсылкаID { get; set; }
[Key]
[Column("_KeyField", Order = 1)]
[MaxLength(4)]
publicbyte[] KeyField { get; set; }
virtual public int НомерСтроки { get; set; }
}
На основании этих предков можно уже создавать потомков
Я сделал несколько тестовых справочников со всевозможными типами.
Например
[Table("_Reference10")]
public partial class Тестовый:СправочникПредок
{
[Column("_CODE",TypeName = "nvarchar")]
[Required]
[StringLength(9)]
public string Код { get; set; }
[Column("_DESCRIPTION",TypeName = "nvarchar")]
[Required]
[StringLength(25)]
override public string Наименование { get; set; }
[Column("_Fld12",TypeName = "nvarchar")]
[StringLength(20)]
public string Строка { get; set; }
[Column("_Fld46",TypeName = "nchar")]
[StringLength(10)]
public string СтрокаФиксированная { get; set; }
[Column("_Fld47",TypeName = "ntext")]
public string СтрокаДлинная { get; set; }
[Column("_Fld13",TypeName = "numeric")]
[Required]
public System.Decimal Число { get; set; }
[Column("_Fld14",TypeName = "numeric")]
[Required]
public System.Int64Целое { get; set; }
[Column("_Fld15")]
[Required]
public DateTime Дата { get; set; }
[Column("_Fld16")]
[Required]
[MaxLength(1)]
public byte[] БулевоId { get; set; }
[Column("_Fld17",TypeName = "image")]
[Required]
public byte[] ХранилищеЗначения { get; set; }
Типы БД nvarchar,nchar,ntext,numeric,DateTime,image
Для описания Decimal для CodeFirst нужны еще приседания, но для BaseFirst и этого предостаточно.
Re[13]: Через год-два .NET Core потеснит Java на рынке enter
Здравствуйте, anton_t, Вы писали:
_> Я тут в мапинге не вижу информации о типах данных на стороне СУБД. Только типы данных в приложении, мапинг на столбцы и валидацию.
Ну ты по ссылке ходил? Там же кроме мапинга имени столбцов еще и типы столбцов
[Column("_CODE",TypeName = "nvarchar")]
По этой схеме при Code First генерятся базы
https://infostart.ru/public/402038/
Там куча примеров
Типы БД nvarchar,nchar,ntext,numeric,DateTime,image
Для описания Decimal для CodeFirst нужны еще приседания, но для BaseFirst и этого предостаточно.
https://stackoverflow.com/questions/3504660/decimal-precision-and-scale-in-ef-code-first
_> Я тут в мапинге не вижу информации о типах данных на стороне СУБД. Только типы данных в приложении, мапинг на столбцы и валидацию.
Ну ты по ссылке ходил? Там же кроме мапинга имени столбцов еще и типы столбцов
[Column("_CODE",TypeName = "nvarchar")]
По этой схеме при Code First генерятся базы
https://infostart.ru/public/402038/
Там куча примеров
public partial class ТабличнаяЧастьПредок
{
virtual public byte[] СсылкаID { get; set; }
[Key]
[Column("_KeyField", Order = 1)]
[MaxLength(4)]
publicbyte[] KeyField { get; set; }
virtual public int НомерСтроки { get; set; }
}
На основании этих предков можно уже создавать потомков
Я сделал несколько тестовых справочников со всевозможными типами.
Например
[Table("_Reference10")]
public partial class Тестовый:СправочникПредок
{
[Column("_CODE",TypeName = "nvarchar")]
[Required]
[StringLength(9)]
public string Код { get; set; }
[Column("_DESCRIPTION",TypeName = "nvarchar")]
[Required]
[StringLength(25)]
override public string Наименование { get; set; }
[Column("_Fld12",TypeName = "nvarchar")]
[StringLength(20)]
public string Строка { get; set; }
[Column("_Fld46",TypeName = "nchar")]
[StringLength(10)]
public string СтрокаФиксированная { get; set; }
[Column("_Fld47",TypeName = "ntext")]
public string СтрокаДлинная { get; set; }
[Column("_Fld13",TypeName = "numeric")]
[Required]
public System.Decimal Число { get; set; }
[Column("_Fld14",TypeName = "numeric")]
[Required]
public System.Int64Целое { get; set; }
[Column("_Fld15")]
[Required]
public DateTime Дата { get; set; }
[Column("_Fld16")]
[Required]
[MaxLength(1)]
public byte[] БулевоId { get; set; }
[Column("_Fld17",TypeName = "image")]
[Required]
public byte[] ХранилищеЗначения { get; set; }
Типы БД nvarchar,nchar,ntext,numeric,DateTime,image
Для описания Decimal для CodeFirst нужны еще приседания, но для BaseFirst и этого предостаточно.
https://stackoverflow.com/questions/3504660/decimal-precision-and-scale-in-ef-code-first