У меня есть таблица TemplateRelations, в которой я хочу установить EntityRef _Template; быть нулевым, но я не уверен, как это сделать. Я пытался сделать что-то вроде этого частного System.Nullable _Template;, но получаю некоторые ошибки
Шаблон типа должен быть типом значения, не допускающим значения NULL, чтобы использовать его в качестве параметра «T» в универсальном типе или методе, допускающем значение NULL.
foreach (var deletingItem in changeSet.Deletes)
{
GetTable(deletingItem.GetType()).InsertOnSubmit(deletingItem);
var skipItem = false;
// if deleting entity depends on updating versioning entity - skip deletion
foreach (var versioningEntity in updatedVersionEntities)
{
var verEntType = versioningEntity.GetType();
var verEntId = Convert.ToInt32(verEntType.GetProperty("Id").GetValue(versioningEntity));
skipItem = deletingItem.GetType().GetProperties()
.Where(prop => prop.PropertyType == verEntType)
.All(prop =>
{
var propValue = prop.GetValue(deletingItem);
var delEntId =
Convert.ToInt32(prop.PropertyType.GetProperty("Id").GetValue(propValue));
return delEntId == verEntId;
});
}
if (skipItem)
continue;
((IDatabaseEntity)deletingItem).Deleted = DateTime.UtcNow;
((IDatabaseEntity)deletingItem).IsDeleted = true;
if (deletingItem is IAffectedByTrackable)
{
(deletingItem as IAffectedByTrackable).DeletedBy =
_identityProvider.Value.GetCurrentUserId();
}
}
?deletingItem
{OrderTemplateTool.Data.TemplateRelation}
Added: {11/5/2024 3:22:13 PM}
Deleted: null
Frozen: false
HasPagebreak: false
Id: 234686
IsDeleted: false
Modified: {11/5/2024 3:22:13 PM}
ReferenceText: "sss"
RelatedTemplate: null
RelatedTemplateId: null
Template: {OrderTemplateTool.Data.Template}
TemplateId: 818819
TemplateRelationType: null
TemplateRelationTypeId: null
_Added: {11/5/2024 3:22:13 PM}
_Deleted: null
_Frozen: false
_HasPagebreak: false
_Id: 234686
_IsDeleted: false
_Modified: {11/5/2024 3:22:13 PM}
_ReferenceText: "sss"
_RelatedTemplateId: null
_Template: {System.Data.Linq.EntityRef}
_Template1: {System.Data.Linq.EntityRef}
_TemplateId: 818819
_TemplateRelationType: {System.Data.Linq.EntityRef}
_TemplateRelationTypeId: null
Подробнее здесь: https://stackoverflow.com/questions/791 ... f-nullable
LinqtoSQL EntityRef может иметь значение NULL ⇐ C#
Место общения программистов C#
-
Anonymous
1730820660
Anonymous
У меня есть таблица TemplateRelations, в которой я хочу установить EntityRef _Template; быть нулевым, но я не уверен, как это сделать. Я пытался сделать что-то вроде этого частного System.Nullable _Template;, но получаю некоторые ошибки
Шаблон типа должен быть типом значения, не допускающим значения NULL, чтобы использовать его в качестве параметра «T» в универсальном типе или методе, допускающем значение NULL.
foreach (var deletingItem in changeSet.Deletes)
{
GetTable(deletingItem.GetType()).InsertOnSubmit(deletingItem);
var skipItem = false;
// if deleting entity depends on updating versioning entity - skip deletion
foreach (var versioningEntity in updatedVersionEntities)
{
var verEntType = versioningEntity.GetType();
var verEntId = Convert.ToInt32(verEntType.GetProperty("Id").GetValue(versioningEntity));
skipItem = deletingItem.GetType().GetProperties()
.Where(prop => prop.PropertyType == verEntType)
.All(prop =>
{
var propValue = prop.GetValue(deletingItem);
var delEntId =
Convert.ToInt32(prop.PropertyType.GetProperty("Id").GetValue(propValue));
return delEntId == verEntId;
});
}
if (skipItem)
continue;
((IDatabaseEntity)deletingItem).Deleted = DateTime.UtcNow;
((IDatabaseEntity)deletingItem).IsDeleted = true;
if (deletingItem is IAffectedByTrackable)
{
(deletingItem as IAffectedByTrackable).DeletedBy =
_identityProvider.Value.GetCurrentUserId();
}
}
?deletingItem
{OrderTemplateTool.Data.TemplateRelation}
Added: {11/5/2024 3:22:13 PM}
Deleted: null
Frozen: false
HasPagebreak: false
Id: 234686
IsDeleted: false
Modified: {11/5/2024 3:22:13 PM}
ReferenceText: "sss"
RelatedTemplate: null
RelatedTemplateId: null
Template: {OrderTemplateTool.Data.Template}
TemplateId: 818819
TemplateRelationType: null
TemplateRelationTypeId: null
_Added: {11/5/2024 3:22:13 PM}
_Deleted: null
_Frozen: false
_HasPagebreak: false
_Id: 234686
_IsDeleted: false
_Modified: {11/5/2024 3:22:13 PM}
_ReferenceText: "sss"
_RelatedTemplateId: null
_Template: {System.Data.Linq.EntityRef}
_Template1: {System.Data.Linq.EntityRef}
_TemplateId: 818819
_TemplateRelationType: {System.Data.Linq.EntityRef}
_TemplateRelationTypeId: null
Подробнее здесь: [url]https://stackoverflow.com/questions/79159648/linqtosql-entityref-nullable[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия