में एक अधिकृत विशेषता के लिए भंडार में कैसे पास करूं? मैं महल विंडसर हूं और यह उपयोग किए जा रहे भंडार में गुजरने में नियंत्रक रचनाकारों के लिए बहुत अच्छा काम करता है।मैं एएसपी.नेट एमवीसी
private IStoryRepository Repository;
public StoryController(IStoryRepository Repository)
{
this.Repository = Repository;
}
अब मेरे पास एक एक्शन है जो मुख्य व्यवस्थापक मेनू को प्रदर्शित करने के लिए व्यवस्थापक क्षेत्र में है। मैं एक कस्टम प्राधिकरण विशेषता है जो सिर्फ जाँच करेगा कि उपयोगकर्ता के लॉग इन एक व्यवस्थापक (सिर्फ उन तालिका में एक isAdmin ध्वज)
[AdminAuthorize]
public ActionResult Menu()
private IStoryRepository Repository;
/// <summary>
/// Initializes a new instance of the <see cref="AdminAuthorizeAttribute"/> class.
/// </summary>
public AdminAuthorizeAttribute(IStoryRepository Repository)
{
this.Repository = Repository;
}
/// <summary>
/// Checks if the user is authorised
/// </summary>
/// <param name="httpContext">The HTTP context.</param>
/// <returns>
/// <c>true</c> if authorized; otherwise, <c>false</c>.
/// </returns>
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
return this.Repository.UserIsAdmin(httpContext.User.Identity.Name);
}
है का इस्तेमाल किया है मैं कैसे प्राप्त कर सकते हैं कैसल ऐसा विशेषता निर्माता में भंडार पारित करने के लिए एक नियंत्रक कन्स्ट्रक्टर के लिए करता है?