0
asp.net webforms 응용 프로그램에서 Ninject 3을 사용하려고합니다. ObjectDataSource
을 포함하는 일부 페이지를 제외하고는 잘 작동하지만 ObjectDataSource
의 Select
메서드는 NullReferenceException
을 던집니다. 내 코드는 다음과 같습니다asp.net webforms에서 objectdatasource와 함께 Ninject를 사용 하시겠습니까?
Web.Admin.Grades.aspx
:
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
EnablePaging="true" TypeName="Web.Admin.Grades"
SelectMethod="GetData" SelectCountMethod="GetDataCount"
StartRowIndexParameterName="StartRowIndex" MaximumRowsParameterName="MaximumRows">
<SelectParameters>
<asp:ControlParameter ControlID="SearchTxtBox" Type="String" Name="SearchKeyWord" PropertyName="Text" />
</SelectParameters>
</asp:ObjectDataSource>
Web.Admin.Grades.cs
:
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
EnablePaging="true" TypeName="Domain.Abstract.IGradesRepository"
SelectMethod="GetGrades" SelectCountMethod="GetGradesCount" OnObjectCreating="ObjectDataSource1_ObjectCreating"
StartRowIndexParameterName="StartRowIndex" MaximumRowsParameterName="MaximumRows">
<SelectParameters>
<asp:ControlParameter ControlID="SearchTxtBox" Type="String" Name="SearchKeyWord" PropertyName="Text" />
</SelectParameters>
</asp:ObjectDataSource>
및 Web.Admin을 다음과 같이
오해 죄송[Inject]
public IGradesRepository _Grades { get; set; }
public IList GetData(string SearchKeyWord, int StartRowIndex, int MaximumRows)
{
return _Grades.GetGrades(SearchKeyWord, StartRowIndex, MaximumRows);
}
public int GetDataCount(string SearchKeyWord)
{
return _Grades.GetGradesCount(SearchKeyWord);
}
Stacktrace와 그 모든 유선 방법과 많은 도움이 될만한 정보 (많은 사람들이 ODS를 사용하지 않고 사람들을 반쯤 만날 수 있다면 도움을 줄 수 있음) –
나는 디버깅을 시작합니다. 페이지 및 주입 발생하지만 GetData 메서드 호출 _Grades null입니다, 무슨 일이? –
나는 몰라 - 나는 거기에 없다 : 왜 당신은 Ninject가 웹에 주입하도록 요청 받았 는가? 관리자. 그레이드? Ninject는 인스턴스를 만지야 할 이유가 필요합니다 - Ninject를 구성하는 방법, 어떤 모듈을 사용하고 있습니까? 배선 등의 일부를 표시합니다. –