Таблица –
Код: Выделить всё
CREATE TABLE [dbo].[Members](
[guid] [uniqueidentifier] NOT NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
ALTER TABLE [dbo].[Members] ADD CONSTRAINT [DF__Members__Guid__398D8EEE] DEFAULT (newid()) FOR [guid]
GO
Код: Выделить всё
using System.Data.Linq.Mapping;
[Table(Name = "Members")]
public class MembersClass
{
[column]
public Guid guid { get; set; }
}
System.InvalidCastException: указанное приведение недопустимо
Вариация темы (другая итерация кода, показанного ниже, включая приведение возврата SQL в виде CHAR или VARCHAR)
Модификация строки C#
/>
Код: Выделить всё
[Column(Name = "guid", DbType ="uniqueidentifier", IsDbGenerated = true, AutoSync = AutoSync.OnInsert)]
public Guid? guid { get { return guid; } set { guid = Guid.TryParse(value.ToString(), out Guid g)?(Guid)g :(Guid?) null; } }
Следующий шаг — создать искусственный Guid в varchar в базе данных
Подробнее здесь: https://stackoverflow.com/questions/798 ... -to-a-guid
Мобильная версия