2010-05-26 27 views
7

Khi tôi đang làm việc trên một dự án asp.net/c#, tôi đang đối mặt với foobar.aspx.designer.cs tự động tạo nội dung của nó. ví dụ: khi tôi thay đổi mã/nhà thiết kế, designer.cs tự động cập nhật nội dung của nó.ASP.NET tự động tạo aspx.designer.cs tắt?

Vì tôi là một người kiểm soát, tôi muốn tự bảo trì mã. Tôi không hài lòng với những lời bình luận quá mức mà tôi không cần. Giống như:

/// <summary> 
    /// Form1 control. 
    /// </summary> 
    /// <remarks> 
    /// Auto-generated field. 
    /// To modify move field declaration from designer file to code-behind file. 
    /// </remarks> 
    protected global::System.Web.UI.HtmlControls.HtmlForm Form1; 

Trong khi tôi muốn thấy như sau:

protected global::System.Web.UI.HtmlControls.HtmlForm Form1; 
    protected global::System.Web.UI.WebControls.Button Button3; 
    etc, etc 

(không nhớ việc đặt tên, ofcourse tôi muốn cung cấp cho nó một số nameing phân biệt)

Làm thế nào để sửa lỗi này? Tôi đã kiểm tra google trên trang này nhưng không thể tìm thấy câu trả lời nhanh như vậy ...

+0

Vâng, bạn luôn có thể hạ cấp xuống VS2003 và ASP.NET 1.1 để loại bỏ tệp .designer.cs. Tại sao bạn muốn làm điều này là ngoài sức tưởng tượng của tôi. Nó không giống như bình luận dư thừa trong một tập tin được tạo ra (mà bạn thậm chí không phải đọc) sẽ gây ra bất kỳ sự khác biệt nào với ứng dụng đã biên dịch. –

+0

Nhưng nó có thể ảnh hưởng đến bất kỳ tài liệu hướng dẫn nào ... – Joris

+0

Có, bạn có thể tắt các tệp designer.cs. Dưới đây là cách thực hiện: http://stackoverflow.com/questions/13867779/how-can-i-remove-asp-net-designer-cs-files/42374300#42374300 – Stokely

Trả lời

1

Bạn có thể đọc nhận xét, họ cho bạn biết phải làm gì.

Di chuyển các khai báo tới codebehind của bạn và xóa tệp thiết kế.

Nhưng tôi cần phải thực hiện một quan sát:

Biểu hiện của loại này quan tâm và đặc biệt là chi tiêu của nỗ lực trong việc cố gắng lùi lại lòng tốt mà VS được hiển thị cho bạn belies một mức độ ngây thơ và thiếu kinh nghiệm.

Có lẽ thời gian của bạn sẽ được mã hóa chi tiêu tốt hơn? ;-)

+0

Nhưng sau đó, ví dụ: khi tôi thêm một hộp văn bản khác , sẽ không có tệp thiết kế nào được tạo ra? – Joris

+0

Tôi nghĩ rằng nhà thơ @code nghĩa là bạn hoàn toàn ngừng thêm điều khiển trong ASPX (đánh dấu). Chỉ thêm điều khiển thông qua mã phía sau. Sau đó, không có tệp thiết kế nào được tạo vì bạn không bao giờ chạm vào tệp đánh dấu của mình nữa. – scherand

+1

@ Joris - ok, hãy quyết định; bạn có phải là người kiểm soát muốn kiểm soát đánh dấu và codebehind của mình hay bạn là người điển hình thích đôi khi điều khiển kéo-n-thả từ hộp công cụ đến * DESIGNER *? ;-) –

1

Tôi không chắc liệu bạn có thể vô hiệu hóa việc tạo tự động tệp này hay không. Cũng không phải là ý tưởng hay nếu làm như vậy ... Nếu bạn thực sự muốn (cần?) Can thiệp vào nó, tôi thà tìm cách thay đổi hành vi/định dạng của nó. Thật không may tôi không thể cung cấp một giải pháp/gợi ý cho điều này hoặc. Bạn có thể phải tìm trong lĩnh vực "công cụ tùy chỉnh" (để tạo mã) mặc dù.

Tại sao bạn không hài lòng với định dạng của tệp? Tôi gần như thậm chí không bao giờ nhìn vào nó :) Và theo Scott Guthrie các tập tin thiết kế đã được giới thiệu trong VS 2005 là "một nơi mà Visual Studio được phép viết mã 'xấu xí'": Tutorial 2: Code-Behind with VS 2005 Web Application Projects.

Chỉnh sửa: Có thể bài viết này của Scott Hanselman có thể giúp ích gì không? T4 (Text Template Transformation Toolkit) Code Generation - Best Kept Visual Studio Secret.

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