CRUD遇到问题总结

CRUD遇到的问题

(1)
在写自定义类时针对于id
因为继承了一个基类,所以得用
如果用int就会出现隐式类型不能转换的问题
(2)
实体-仓储-Dto都应该命名做到一一对应
(3)
在实现CRUD时就应该
1.根据对数据要做的操作先定义仓储接口
2.继承EfCoreRepository
3.在泛型参数里制定对应的数据上下文
4.还有一种自动生成接口的代码
不想自动生成就注释掉

//options.ConventionalControllers.Create(typeof(BookStoreApplicationModule).Assembly);

补充:后续发现根本就没有这段代码,回头看官方文档有一句话可以更改就是在

[RemoteService(IsEnabled = false)]

就可以禁用自动生成api

后续遇到的问题
(1)swagger中execute之后500错误 首先打开了vs的异常设置的运行时报错打勾
然后在cmd控制台中发现时找不到这个表的错误,然后从DbContext里找到第一处Dbset 表名 必须与表名一致否则出错

  builder.Entity<Book>(b =>
        {
    
    
            b.ToTable(CloudConsts.DbTablePrefix + "Book",//这也得和表名一致
                CloudConsts.DbSchema);
            b.ConfigureByConvention();
            b.Property(b=>b.Name)
            .IsRequired()
            .HasMaxLength(128);
        });

猜你喜欢

转载自blog.csdn.net/weixin_45139296/article/details/131171546