可能重复: What is a NullReferenceException in .NET? System.NullReferenceException: Object reference not set to an instance of an object
我正在使用以下代码。
public partial class SectionControls_SingleBanners : SectionControlBaseClass
{
private SingleBanners _section;
protected void Page_PreRender(object sender, EventArgs e) {
updateViews();
if (RssCapable(this._section.GetType()) && _section.BannersEntries.Rows.Count > 0) {
所以这里的代码我得到了错误
this._section.GetType();
如何解决这个问题?
答案 0 :(得分:1)
您无法对未实例化的对象执行非静态方法。
试试这个:
private SingleBanners _section = new SingleBanners();
答案 1 :(得分:1)
我认为您忘记为_section
设置值。您应该在updateViews
。
我相信您计划将_section
作为SingleBanners
的某个子类的实例,该子类将在运行时确定。如果_section
的类型在编译时是明确的(如_section = new SingleBanners()
),那么您将使用typeof(SingleBanners)。
答案 2 :(得分:0)
很可能,这意味着_section为null且尚未设置。你需要
private SingleBanners _section = new SingleBanners(...);
或
_section = ...
在你可以使用之前的其他地方。
答案 3 :(得分:0)
答案在错误Object Reference not set to an Instance of an Object...
您声明了object _section
,但是您还没有设置对它的引用?
类似的东西:
private SingleBanners _section = new SingleBanners();
您宣布私有SingleBanners _section
的方式;对object _section
的引用将为null!
答案 4 :(得分:0)
而不是尝试
_section.GetType()
使用
typeof(SingleBanners )