Tôi mới sử dụng NopCommerce v2.4 và tự hỏi mình nên viết mã ở đâu (bằng cách tạo mô hình mới trong phần quản trị hoặc nop.web)Cách thêm bảng mới vào NOPCommerce v2.4
Trả lời
Câu hỏi này đã được trả lời trong nopCommerce diễn đàn here
http://www.nopcommerce.com/docs/75/plugin-with-data-access.aspx
tôi đã dành nhiều thời gian cho đào sâu vào vấn đề này' sâu. Tôi có thể tóm tắt các giải pháp như sau:
Tạo Entity Class (ví dụ Entity.cs)
Đường dẫn: Nop/Core/Domain/Entity.cs
Tạo Các Mapping lớp (ví dụ EntityMap.cs)
Đường dẫn: Nop/dữ liệu/Mapping/EntityMap.cs
Tạo một mô hình cho MVC (ví dụ EntityModel.cs)
Đường dẫn: Nop/Admin/mô hình/EntityModel.cs HOẶC Nop/Web/mô hình/EntityModel.cs
Tạo một validator cho mô hình (ví dụ EntityValidator.cs)
Đường dẫn: Nop/Admin/Validators/EntityValidator.cs HOẶC Nop/Web/Validators/EntityValidator.cs
tạo một cấu hình Mapping On AutoMapper StartupTask.cs cho Entity và mẫu
Đường dẫn: Nop/Admin/Cơ sở hạ tầng HOẶC Nop/Web/Cơ sở hạ tầng
Áp dụng Mapping giữa Model và Entity trên MappingExtensions.cs
Đường dẫn: Nop/quản trị HOẶC Nop/Web
Tạo một lớp dịch vụ và dịch vụ giao diện (ví dụ EntityService.cs, IEntityService.cs)
Đường dẫn: Nop/Dịch vụ/EntityService.cs VÀ Nop/Dịch vụ/IEntityService.cs
dịch vụ đăng ký cho dependency injection
Đường dẫn: Nop/Web/Framework/DependencyRegistrar.cs
Cuối cùng Tạo điều khiển và Xem cho mô hình cho
như nopcommerce sử dụng bản phát hành đầu tiên của MVC3, việc di chuyển cơ sở dữ liệu không được hỗ trợ và bạn phải thực hiện các thay đổi đối với các bảng cơ sở dữ liệu bằng tay. Bởi vì mã MVC đầu tiên phải thả và tạo lại cơ sở dữ liệu của bạn để phản ánh những thay đổi đối với cơ sở dữ liệu của bạn.
Nếu bạn muốn xem chi tiết hơn trong bất kỳ bước nào, hãy cho tôi biết - Tôi có thể mô tả chi tiết từng bước. Hy vọng điều này sẽ hữu ích.
Bạn có thể giải thích chi tiết hoặc ví dụ nào không? Tôi tạo một bảng trong cơ sở dữ liệu nhưng tôi không muốn tạo một plugin mới, tôi chỉ muốn thêm các lớp trong Nop.Core Nop.Data Nop.Services và ... nhưng tôi không biết về quá trình này. Tôi chỉ muốn tạo dịch vụ và gọi dịch vụ để tải danh sách thả xuống của tôi trong Nop.Web hoặc Nop.plugin. – arlen
Tôi có nên tạo một plugin mới cho thực thể mới trong cơ sở dữ liệu của tôi và tham chiếu nó trong các dự án khác như các plugin khác hoặc các dự án Nop.Web hoặc Admin thay vì thêm các lớp của tôi vào Nop.Core Nop.Data Nop.Services? – arlen
@Behnam Esmaili
trả lời câu trả lời hoàn hảo, nhưng bạn nên đối mặt với một vấn đề với việc tạo ra bộ điều khiển bởi vì bạn wan't có thể tạo ra một thể hiện từ IEntityService vì nopCommerce sử dụng Dependency Injection và điều này đang được điều khiển bởi AutoFac vùng chứa.
Vì vậy, bạn đã thông báo Check this post on nopCommerce forum, Điều đó sẽ hữu ích để giúp bạn hoàn thành công việc.
Có một ghi chú khác, Nếu bạn muốn tránh thực hiện thay đổi cơ sở dữ liệu bằng tay, bạn nên thực hiện các bước từ 1 đến 8 trên phiên bản mới của nopCommerce và cài đặt cơ sở dữ liệu sẽ được tạo với những thay đổi bạn đã thực hiện cho các mô hình.
Behnam Esmaili Giải pháp là đúng nhưng họ quên thêm một bước để đăng ký Mới được tạo Dịch vụ điều khiển trong Presentation ==> Nop.Web.Framework ==> DependencyRegistrar.cs như thế này
builder.RegisterType<EntityService>().As<IEntityService>().InstancePerHttpRequest();
Một Bước còn lại Behnam Esmaili answer
Tạo bảng trong cơ sở dữ liệu NopCommerce.
Lưu ý: Tạo thủ công bảng trong cơ sở dữ liệu là cần thiết.
Cuối cùng, tạo bộ điều khiển và Chế độ xem của bộ điều khiển.
Nếu bạn muốn xem chi tiết hơn, hãy nhấp vào here!
- 1. Cách thêm cột mới vào bảng MYSQL
- 2. Thêm cột mới vào bảng mysql lớn
- 3. Thêm bảng mới vào cơ sở dữ liệu moodle
- 4. Cách thêm thuộc tính mới vào ActiveRecord
- 5. Cách thêm cột mới vào tệp CSV?
- 6. Cách thêm mục mới vào băm
- 7. cách thêm hàng mới vào vb.net
- 8. cách thêm cột mới vào khóa chính composite hiện có
- 9. Bảng CDC không hoạt động sau khi thêm cột mới vào bảng nguồn
- 10. Cách thêm cột nhận dạng mới vào bảng trong SQL Server?
- 11. Làm thế nào để thêm hàng bảng ASP.NET mới bằng cách nhấn vào nút?
- 12. Làm việc với WebSQL. Cách thêm cột mới vào bảng hiện có?
- 13. Cách Java EE/JPA để thêm bảng/thực thể mới vào cơ sở dữ liệu
- 14. Cách thêm Cột Mới có Giá trị vào Bảng Dữ liệu Hiện tại?
- 15. AJAX: thêm hàng mới vào bảng hoặc loại bỏ bằng cách sử dụng AJAX
- 16. Cách thêm cột mới vào vùng lưu trữ bảng xanh hiện tại
- 17. Làm cách nào để thêm hàng mới vào datagridview?
- 18. thêm cột vào SQLAlchemy Bảng
- 19. cách thêm khóa chính vào bảng trong đường ray
- 20. Thêm trục-bảng vào một bảng tính google, qua API
- 21. Chèn bản ghi MySQL từ nhiều bảng vào bảng mới
- 22. Thêm dòng mới vào tệp CSV
- 23. thêm bảng điều khiển vào Jframe
- 24. Thêm cột mới vào thẻ actions_as_taggable_on
- 25. Thêm một dòng mới vào cuối JtextArea
- 26. Cách thêm một trang mới vào MySql Workbench
- 27. Cách thêm dòng mới vào JLabel với các biến
- 28. Cách thêm giá trị mảng vào FormData mới?
- 29. Cách nhanh nhất để thêm nút mới vào cuối xml?
- 30. Cách thêm nút MvcSitemapProvider mới vào thời gian chạy
cảm ơn nhưng cần thêm trợ giúp – user1299582
Tôi vẫn cần thêm trợ giúp. Tôi nói thêm rằng dự án trong Plugins tôi Tôi không thể nhìn thấy plugin này trong admin -> Configuration -> plugins tôi đã thêm dòng sau trong \ Presentation \ Nop.Web \ Views \ Catalog \ ProductTemplate.SingleVariant.cshtml @ Html.Action ("Chỉ mục", "Theo dõi", mới {productId = Model.Id}) Tôi nhận được ngoại lệ này: Thực thi yêu cầu con không thành công. Vui lòng kiểm tra InnerException để biết thêm thông tin. InnerException: {"Bộ điều khiển cho đường dẫn '/ p/5/1-oz-krugerrand' không được tìm thấy hoặc không thực hiện IController."} Tôi vừa thêm vài sản phẩm thông qua quản trị viên. – user1299582
Tôi đã từng làm việc trên các plugin nhưng hãy nhớ thêm một số plugin hiện có. Tôi muốn bạn xác minh xem bạn có đường dẫn đầu ra xây dựng được đặt thành Nop.Web \ Plugins \ và cũng kiểm tra InstalledPlugins.txt trong thư mục App_data – Kiru