170 похожих чатов

Здравствуйте. Подскажите пожалуйста как исправить ошибку при Update-database Ошибка Failed executing DbCommand

(7ms) [Parameters=[], CommandType='Text', CommandTimeout='30']
CREATE TABLE [Posts] (
[Id] int NOT NULL IDENTITY,
[Title] nvarchar(100) NOT NULL,
[Text] nvarchar(max) NOT NULL,
[ImageUrl] nvarchar(255) NULL,
[UserId] int NOT NULL,
[PostStatisticsId] int NOT NULL,
[TopicOfPostId] int NOT NULL,
[CategoryId] int NOT NULL,
CONSTRAINT [PK_Posts] PRIMARY KEY ([Id]),
CONSTRAINT [FK_Posts_Categories_CategoryId] FOREIGN KEY ([CategoryId]) REFERENCES [Categories] ([Id]) ON DELETE CASCADE,
CONSTRAINT [FK_Posts_PostStatistics_PostStatisticsId] FOREIGN KEY ([PostStatisticsId]) REFERENCES [PostStatistics] ([Id]) ON DELETE CASCADE,
CONSTRAINT [FK_Posts_TopicsOfPosts_TopicOfPostId] FOREIGN KEY ([TopicOfPostId]) REFERENCES [TopicsOfPosts] ([Id]) ON DELETE CASCADE,
CONSTRAINT [FK_Posts_Users_UserId] FOREIGN KEY ([UserId]) REFERENCES [Users] ([Id]) ON DELETE CASCADE
);

Introducing FOREIGN KEY constraint 'FK_Posts_TopicsOfPosts_TopicOfPostId' on table 'Posts' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.
Could not create constraint or index. See previous errors.

using Forum_MVC.Data.Entities;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;

public class Post
{
public int Id { get; set; }

[Required(ErrorMessage = "The 'Title' field is required.")]
[StringLength(100, MinimumLength = 3, ErrorMessage = "Title must be between 3 and 100 characters.")]
public string Title { get; set; }

[Required(ErrorMessage = "The 'Text' field is required.")]
public string Text { get; set; }

[MaxLength(255, ErrorMessage = "Image URL cannot exceed 255 characters.")]
public string? ImageUrl { get; set; }

[Required(ErrorMessage = "The 'UserId' field is required.")]
public int UserId { get; set; }

public int PostStatisticsId { get; set; }

[ForeignKey("PostStatisticsId")]
public PostStatistics PostStatistics { get; set; }

[ForeignKey("UserId")]
public User User { get; set; }

public int TopicOfPostId { get; set; }
[ForeignKey("TopicOfPostId")]
public TopicOfPost Topic { get; set; }

public ICollection<Comment> Comments { get; set; }

public int CategoryId { get; set; }

[ForeignKey("CategoryId")]
public Category Categories { get; set; }
}

using Forum_MVC.Data.Entities;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;

public class TopicOfPost
{
public int Id { get; set; }

[Required(ErrorMessage = "The 'Name' field is required.")]
[StringLength(100, MinimumLength = 3, ErrorMessage = "Name must be between 3 and 100 characters.")]
public string Name { get; set; }

[MaxLength(255, ErrorMessage = "Description cannot exceed 255 characters.")]
public string Description { get; set; }

[Required(ErrorMessage = "The 'UserId' field is required.")]
public int UserId { get; set; }

// Active, Suspended
public string VisibilityStatus { get; set; }

[ForeignKey("UserId")]
public User User { get; set; }

public ICollection<Post> Posts { get; set; }
}
Буду очень благодарна за помощь)

1 ответов

31 просмотр

ну так написано же вроде Introducing FOREIGN KEY constraint 'FK_Posts_TopicsOfPosts_TopicOfPostId' on table 'Posts' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints.

Похожие вопросы

Обсуждают сегодня

Комрады, хотел уточнить. Проперть в OnDestroy юнита-хозяина по-прежнему доступна? И еще уточнение: finalization юнита наступает раньше или позже OnDestroy?
Ed Doc
40
А как старый хаскел с новым стыковать ? потому как тут работает https://play.haskell.org/saved/C3xpMzcd, а вот тут https://stepik.org/lesson/7602/step/9?unit=1473 нет ошибка C...
Fedor
44
Вопрос, вот задание https://stepik.org/lesson/7602/step/9?unit=1473 вот код и ошибка, удивляет, что требуется еще и Semigroup так и должно быть, или я опять делаю ошибки ? htt...
Fedor
14
Вообще, меня бы даже такой вариант, наверное устроил бы: try tag.Read(0); finally end; Но этот AV не ловится и программа завершается Exception EAccessViolation in module C...
notme
12
Проблема с Windows scripting control Множество объектов получают iDispatch обертки и отдаются в скрипты. При этом скрипты могут эти обертки держать живыми очень долго, наприм...
Arioch The
16
Скажите, можно ли как-то "переместить" динамический массив из одной переменной в другую? Скажем, переместить из TList<> в TArray<>. Именно переместить, а не скопировать. Если ...
Eugene Krasnikov (ᴊɪɴ x)
37
Да и вообще... как VBS/VBA производит вызов методов тогда? Как мне на Delphi сделать точно также, блин.... VBS/VBA не падают, а возвращают нормальный СОМ-объект, где можно про...
notme
10
Всем доброго времени суток! В BDE в своё время был файл BDEINST.dll который, как я понимаю, содержал всё что нужно для инсталляции BDE. Если посмотреть на дату его создания то...
Mikhail Tchervonenko
2
Я тут пытаюсь переработать архитектуру подсистемы памяти ядра во что-то осмысленное. Есть pmm, который создает набор range’ей(пока что только для ядра, потом для юзерспейса), ...
Evg Resh
9
комрады, че-та лыжы не едут var tmpFont: TFont; begin tmpFont:= TFont.Create; try case rgFontColor.ItemIndex of 0: tmpFont.Color:= clWindowText; 1: tmpFo...
Ed Doc
34
Карта сайта