2016-08-23 7 views
11

देखें घटक:उपयुक्त निर्माता नहीं मिला (देखें घटक)

public class WidgetViewComponent : ViewComponent 
{ 
    private readonly IWidgetService _WidgetService; 

    private WidgetViewComponent(IWidgetService widgetService) 
    { 
     _WidgetService = widgetService; 
    } 

    public async Task<IViewComponentResult> InvokeAsync(int widgetId) 
    { 
     var widget = await _WidgetService.GetWidgetById(widgetId); 
     return View(widget); 
    } 
} 

दृश्य ~/दृश्य में/कर्मचारियों/Details.cshtml

@await Component.InvokeAsync("Widget", new { WidgetId = Model.WidgetId }) 

दृश्य घटक पर ~ दृश्य स्थित है /Shared/Components/Widget/Default.cshtml

त्रुटि मैं प्राप्त नीचे है:

अमान्य ऑपरेशन अपवाद: 'MyApp.ViewComponents.WidgetViewComponent' टाइप करने के लिए उपयुक्त कन्स्ट्रक्टर स्थित नहीं हो सका। सुनिश्चित करें कि प्रकार ठोस है और सार्वजनिक कन्स्ट्रक्टर के सभी मानकों के लिए सेवाएं पंजीकृत हैं।

private WidgetViewComponent(IWidgetService widgetService) 
{ 
    _WidgetService = widgetService; 
} 

यह सार्वजनिक किया जाना चाहिए अन्यथा डि यह उपयोग नहीं कर सकते:

उत्तर

30

समस्या यह है कि अपने निर्माता निजी है

public WidgetViewComponent(IWidgetService widgetService) 
{ 
    _WidgetService = widgetService; 
} 
संबंधित मुद्दे