Subsonic 3 Active Record 测试

发布于 2024-07-26 05:13:39 字数 1432 浏览 11 评论 0原文

使用新的内置 Active Record 测试(将“Test”设置为连接字符串),我在执行更新时遇到了问题。

我正在测试的代码从数据库中提取现有对象,对其进行一些更改,然后保存它。

public void SaveProduct(string productId) {

var dbProduct = Model.Generated.Product.SingleOrDefault(x => x.ProductID == productId);

dbProduct.Description = "Description";
dbProduct.Price = "Price";

dbProduct.Save();

}

为了测试这一点,我正在创建一个新的产品列表,其中包含一种产品。

_dbProducts = new List<Product>
                      {
                          new Product
                              {
                                  ProductID = "XXX0001"
                              }
                      };

然后我设置了测试(假)。

Product.Setup(_dbProducts)

调用保存方法

repository.SaveProduct("XXX0001");

问题是我收到以下错误消息...

System.NotImplementedException:该方法或操作未实现。 在 SubSonic.Repository.TestRepository`1.Add(T 项,IDataProvider 提供者) 在 ActiveRecord.cs 中的 Model.Generate.Product.Add(IDataProvider 提供程序)处:第 708 行 在 ActiveRecord.cs 中的 Model.Generate.Product.Save(IDataProvider 提供程序)处:第 721 行 在 ActiveRecord.cs 中的 Model.Generate.Product.Save() 处:第 715 行 在 ProductRepository.cs 中的 Subsonic.PDAJobRepository.SaveProduct() 处:第 46 行 在 When_Saving_Product.cs 中的 Tests.ProductRepository.When_Saving_Product.Setup() 处:第 44 行

Using the new built in testing for Active Record (set "Test" as the connection string) I've hit a problem performing an update.

The code I'm testing pulls an existing object out of the database, makes some changes to it, and then saves it.

public void SaveProduct(string productId) {

var dbProduct = Model.Generated.Product.SingleOrDefault(x => x.ProductID == productId);

dbProduct.Description = "Description";
dbProduct.Price = "Price";

dbProduct.Save();

}

To test this, I'm creating a new list of products, with one product in it.

_dbProducts = new List<Product>
                      {
                          new Product
                              {
                                  ProductID = "XXX0001"
                              }
                      };

Then I set up the test (fake).

Product.Setup(_dbProducts)

call the save method

repository.SaveProduct("XXX0001");

The problem is I'm getting the following error message...

System.NotImplementedException: The method or operation is not implemented.
at SubSonic.Repository.TestRepository`1.Add(T item, IDataProvider provider)
at Model.Generated.Product.Add(IDataProvider provider) in ActiveRecord.cs: line 708
at Model.Generated.Product.Save(IDataProvider provider) in ActiveRecord.cs: line 721
at Model.Generated.Product.Save() in ActiveRecord.cs: line 715
at Subsonic.PDAJobRepository.SaveProduct() in ProductRepository.cs: line 46
at Tests.ProductRepository.When_Saving_Product.Setup() in When_Saving_Product.cs: line 44

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

饭团 2024-08-02 05:13:39

Ick - 你能为我记录这个问题吗:
http://github.com/subsonic/SubSonic-3.0/issues

这是一个过度网站。

Ick - can you log this issue for me:
http://github.com/subsonic/SubSonic-3.0/issues

That's an oversite.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文