Tôi đã tạo và nướng hoàn toàn một mạng nội bộ MVC C# PROJECT_A. Sau đó, tôi đã tạo và hoàn toàn nướng một WebForms C# intranet PROJECT_B.Tại sao tên dự án cũ vẫn được tham chiếu trong các tệp tạm thời trên Visual Studio
Bây giờ tôi cần hợp nhất hai thành một combo MVC/WebForms C# PROJECT_C.
Tôi đã thực hiện việc này và dường như biên dịch.
NHƯNG ... khi tôi cháy lên mới PROJECT_C bên trong VS2013 Cuối cùng, tôi nhận được một lỗi trên trang index kết quả ...
CS0246: The type or namespace name 'PROJECT_A' could not be found (are you missing a using directive or an assembly reference?)
Trong phần Lỗi nguồn là dòng này (rõ ràng) tạo ra lỗi:
Line 1: #pragma checksum "C:\...\PROJECT_C\Views\CONTROLLERNAME\Index.cshtml" "{ff1816ec-aa5e-4d10-87f7-6f4963833460}" "56225EBEFF70A747D10FB7D43A7A8EFCE86DAF72"
Line 2: //------------------------------------------------------------------------------
Line 3: // <auto-generated>
Line 4: // This code was generated by a tool.
Line 5: // Runtime Version:4.0.30319.34209
Line 6: //
Line 7: // Changes to this file may cause incorrect behavior and will be lost if
Line 8: // the code is regenerated.
Line 9: // </auto-generated>
Line 10: //------------------------------------------------------------------------------
Line 11:
Line 12: namespace ASP {
Line 13: using System;
Line 14: using System.Collections.Generic;
Line 15: using System.IO;
Line 16: using System.Linq;
Line 17: using System.Net;
Line 18: using System.Web;
Line 19: using System.Web.Helpers;
Line 20: using System.Web.Security;
Line 21: using System.Web.UI;
Line 22: using System.Web.WebPages;
Line 23: using System.Web.Mvc;
Line 24: using System.Web.Mvc.Ajax;
Line 25: using System.Web.Mvc.Html;
Line 26: using System.Web.Optimization;
Line 27: using System.Web.Routing;
Line 28: using PROJECT_A; //error line...
Line 29:
Line 30:
Line 31: public class _Page_Views_CONTROLLERNAME_Index_cshtml : System.Web.Mvc.WebViewPage<PROJECT_C.Models.Search> {
Line 32:
Line 33: #line hidden...
Tôi nói "rõ ràng" vì PROJECT_A không còn tồn tại trong tên. Chỉ có PROJECT_C mà tôi đang cố gắng đóng cọc này vào!
Nguồn tập tin đó được cho là sản xuất các lỗi được liệt kê như:
c:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root\14bee5fc\75cf6bf4\App_Web_index.cshtml.8117ffad.9pjm2azc.0.cs
Trong một nỗ lực để sửa lỗi này tôi đã thực hiện như sau:
- dọn dẹp% temp% files
- Các tệp tạm thời đã xóa khỏi cả c: \ Windows \ Microsoft.NET \ Framework \ và c: \ Windows \ Microsoft.NET \ Framework64 \
- được tìm kiếm và thay thế tất cả các trường hợp của PROJECT_A (và các trường hợp PROJECT_B) với PROJECT_C từ bên trong mã
- sạch dự án/Giải pháp
- namespace Checked trong web.config và các nơi khác
- ... Tôi không thể nghĩ nhiều hơn về
Lỗi này vẫn tiếp diễn.
tiến bộ Cập nhật:
tôi đã nhận thấy một sự khác biệt có thể với phiên bản .net. Phiên bản đích của tôi là 4.5.1. Tuy nhiên, tôi nghĩ rằng có thể chỉ trong tên thư mục tạm thời. Bạn có thể thấy nó trong mã nguồn được dán ở trên. Đây là từ trang web của tôi.config
<compilation debug="true" targetFramework="4.5.1">
Tôi, một lần nữa, chải kỹ mã của tôi tìm kiếm các tham chiếu không đúng với dự án cũ và các lớp cũ và dường như không tìm thấy bất kỳ thứ gì. Tôi thậm chí đã xem qua config.dll s trong bin /. Tôi đang tìm kiếm các khai báo không gian tên và cách sử dụng.
Hiện tại tôi đã loại trừ thư mục PROJECT_B khỏi dự án chính chỉ để giữ cho nó sạch sẽ.
Tôi thực sự không muốn phải bắt đầu mới với dự án MVC mới như tôi đã làm điều đó. Nhưng tôi có thể phải làm vậy.
Tôi đã rất cẩn thận để bao gồm nhiều thông tin nhất có thể. Hãy cho tôi biết nếu tôi bỏ lỡ bất cứ điều gì.
Cảm ơn bạn rất nhiều vì đã giúp đỡ! Tôi đang ở ngày thứ hai về điều này!
lý do tại sao không gian tên project_a trong lớp bây giờ bất cứ nơi nào bạn đang sử dụng mà vua của lớp thay đổi không gian tên với project_c hoặc kiểm tra tham chiếu lắp ráp trong webconfig có thể là một số tập tin vẫn nhắm mục tiêu đến url cũ hoặc chia sẻ mã của bạn. –
hãy xem điều này ... http: //matthewwilliams.com/changing-namespace-for-an-mvc-project-in-visual-studio/ –