2014-10-02 25 views
5

Tôi hiện đang làm việc trên “bộ” của các ứng dụng intranet nộiSử dụng một dự án ASP.net MVC là một dự án "cơ sở" cho MVC khác dự án

Họ đều là những ứng dụng MVC asp.net, mà sẽ được (vì nhiều lý do) được triển khai như các ứng dụng riêng biệt

tôi đang phải đối mặt với số lượng lớn trùng lặp -

Mỗi ứng dụng về cơ bản có cùng một “bên ngoài” vỏ lớp vỏ bên ngoài này không chỉ là về quan điểm, nó bao gồm xác thực logic v.v.…

Chế độ xem “bên trong” là ứng dụng thực tế.

Vì vậy, trong một thế giới lý tưởng, tôi muốn có một cái gì đó như:

MyCompany.Web
Giữ _Layout, bộ điều khiển cơ bản, auth vv ...

Sau đó, các dự án MVC khác trong dung dịch của tôi như:

  • MyCompany.Web.App1
    kế thừa MyCompany.Web

  • MyCompany.Web.App2
    kế thừa MyCompany.Web

vv ...

Có cách nào tôi có thể làm một cách hợp lý để tạo điều kiện điều này?

Mọi thứ tôi đã thử cho đến nay đều liên quan đến các lượt xem xcopy, vv .. vào các dự án phụ trên các bản dựng và cảm thấy rất mong manh.

Trả lời

1

Tạo gói nuget cho tất cả mã dựa trên assembly được chia sẻ.

Cân nhắc xem các gói nuget có hợp lý cho mọi lượt xem hoặc chia sẻ tệp bố cục hay không.

Xem xét tạo mẫu dự án bao gồm tập quán của các gói gói có liên quan. Điều này sẽ cho phép bạn thực hiện theo cùng một mẫu MVC mà bạn có thể tạo một dự án mới và cập nhật các gói nuget nếu cần thiết. Điều này giúp loại bỏ nhu cầu thay đổi thường xuyên đối với bản thân mẫu, ngoại trừ những thay đổi không dễ dàng được chia sẻ bởi nuget.

+0

"Cân nhắc xem gói nuget có hợp lý cho bất kỳ chế độ xem hoặc bố cục tệp nào không" - đó là những gì tôi đang cố gắng thực hiện - bố cục sẽ vẫn giữ nguyên (đầu trang, chân trang, v.v.) giữa thay đổi giữa các ứng dụng – Alex

+0

@Alex nhớ rằng bạn có thể có bố trí bố cục. Tạo bố cục chính có phần được xác định cho phần giữa bên trong, sử dụng nuget để chia sẻ bố cục chính để có thể dễ dàng cập nhật nội dung và mẫu dự án để xác định bộ xương trống hoặc cơ sở của phần bên trong. Nuget không xử lý các sửa đổi đối với các thành phần gói tốt, ngay cả các ký tự đơn sẽ thường loại bỏ cơ hội thực hiện gói cập nhật đúng (hy vọng đây là thứ mà chúng giải quyết trong tương lai có lẽ với cách hợp nhất 3 cách). –

+0

Gave điều này một đi, nhưng tôi nhận được vấn đề sau đây: http://stackoverflow.com/questions/26218714/bindingredirect-not-working-with-project-created-from-nuget-package – Alex

Các vấn đề liên quan