5

Giả sử một mô hình trừu tượng như thế này:UIHint không thể giải quyết mẫu trong các mô hình trừu tượng

public abstract class MyClass : BaseEntity 
{ 
    [UIHint("File")] 
    public long? DocumentFileId { get; set; } 
} 

Vấn đề là Cannot resolve template 'File', trong khi có File.cshtml trong các mẫu Xem editor.

Message as shown in Visual Studio

Vấn đề là, nếu tôi không xác định MyClass như một lớp trừu tượng, lỗi sẽ được giải quyết.

Câu hỏi của tôi là, tại sao mẫu trình chỉnh sửa không thể giải quyết trong các lớp trừu tượng và cách tôi có thể xử lý nó?

+2

Mẫu được lưu ở đâu? MVC sẽ chỉ tìm thấy chúng nếu chúng nằm trong một thư mục có tên là 'EditorTemplates' hoặc' DisplayTemplates' trong 'Views/Shared /' hoặc 'Views/{YourController}'. – DavidG

+0

@DavidG: Đúng vậy, và tôi ở đó. Mẫu này đang làm việc trên tất cả các dự án nhưng các lớp trừu tượng. –

+0

Bạn gặp lỗi ở đâu? – DavidG

Trả lời

4

Đây là lỗi với ReSharper là reported gần một năm trước. Không giống như JetBrains đang vội vàng sửa chữa nó.

Tuy nhiên, nó không được can thiệp vào sự phát triển của bạn ngoài việc gây phiền toái.

+0

Tôi đã thay đổi mức độ nghiêm trọng từ Lỗi thành Đề xuất để loại bỏ màu đỏ bắt mắt –

2

Một tùy chọn khác là để ngăn chặn cảnh báo ở cấp lớp, như thế này;

[SuppressMessage("ReSharper", "Mvc.TemplateNotResolved")] 
public abstract class MyClass : BaseEntity 
{ 
    // .... 
0

Tôi đã tắt cảnh báo này trong lớp trừu tượng có nhận xét.

// Resharper 8 fails to resolve templates in abstract classes. 
// https://youtrack.jetbrains.com/issue/RSRP-373171 
// ReSharper disable Mvc.TemplateNotResolved 
public abstract class MyAbstractClass 
{ 
    ... 
Các vấn đề liên quan