VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 549|回复: 7

有段代码,老是报告错误!

[复制链接]

2

主题

9

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
发表于 2020-1-16 07:00:01 | 显示全部楼层 |阅读模式
/// <summary>
                /// 数据库访问接口。
                /// </summary>
                public static Interfaces.Data.IDataAccess CreateInstance()
                {
                        string connectionString = Reservoir.Configuration.GeneralOperator.Get("ConnectionString");
                        string providerType = Reservoir.Configuration.GeneralOperator.Get("ProviderType");

                        Interfaces.Data.IDataAccessFactory dataAccessFactory = (Interfaces.Data.IDataAccessFactory)Reservoir.Plugin.PluginOperator.Get("DataAccessFactory").CreateInstance();
                        return dataAccessFactory.CreateDataAccess(connectionString, providerType);
                }

这句:
return dataAccessFactory.CreateDataAccess(connectionString, providerType);

回复

使用道具 举报

2

主题

9

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
 楼主| 发表于 2020-1-20 02:27:01 | 显示全部楼层
“/Reservoir.Web”应用程序中的服务器错误。
--------------------------------------------------------------------------------

未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:


行 16:
行 17:                         Interfaces.Data.IDataAccessFactory dataAccessFactory = (Interfaces.Data.IDataAccessFactory)Reservoir.Plugin.PluginOperator.Get("DataAccessFactory").CreateInstance();
行 18:                         return dataAccessFactory.CreateDataAccess(connectionString, providerType);
行 19:                 }
行 20:         }


源文件: d:\web\reservoir.logic\container\dataaccess.cs    行: 18

堆栈跟踪:


[NullReferenceException: 未将对象引用设置到对象的实例。]
   Reservoir.Logic.Container.DataAccess.CreateInstance() in d:\web\reservoir.logic\container\dataaccess.cs:18
   Reservoir.Logic.Container.NewsCategory.CreateOperator() in d:\web\reservoir.logic\container\newscategory.cs:28
   Reservoir.Web.WebForm1..ctor() in d:\web\reservoir.web\webform1.aspx.cs:21
   ASP.WebForm1_aspx..ctor() in c:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\reservoir.web\ed4d0d83\10b44cec\1ocuembo.0.cs:0

[TargetInvocationException: 调用的目标发生了异常。]
   System.RuntimeType.CreateInstanceImpl(Boolean publicOnly) +0
   System.Activator.CreateInstance(Type type, Boolean nonPublic) +66
   System.Activator.CreateInstance(Type type) +7
   System.Web.HttpRuntime.CreatePublicInstance(Type type)
   System.Web.UI.TemplateControlParser.GetCompiledInstance(String virtualPath, String inputFile, HttpContext context)

[HttpException (0x80004005): 未能创建类型为“ASP.WebForm1_aspx”的页。]
   System.Web.UI.TemplateControlParser.GetCompiledInstance(String virtualPath, String inputFile, HttpContext context)
   System.Web.UI.PageParser.GetCompiledPageInstanceInternal(String virtualPath, String inputFile, HttpContext context)
   System.Web.UI.PageHandlerFactory.GetHandler(HttpContext context, String requestType, String url, String path)
   System.Web.HttpApplication.MapHttpHandler(HttpContext context, String requestType, String path, String pathTranslated, Boolean useAppConfig)
   System.Web.MapHandlerExecutionStep.System.Web.HttpApplication+IExecutionStep.Execute()
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)


回复

使用道具 举报

0

主题

110

帖子

63.00

积分

新手上路

Rank: 1

积分
63.00
发表于 2020-1-20 12:09:01 | 显示全部楼层
断点一下看dataAccessFactory是否为空?
回复

使用道具 举报

2

主题

9

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
 楼主| 发表于 2020-1-20 13:09:01 | 显示全部楼层
楼上的.dataAccessFactory  的确为空. 然后怎么跟踪呢??

回复

使用道具 举报

0

主题

10

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
发表于 2020-1-21 19:27:01 | 显示全部楼层
检查你的代码,
Interfaces.Data.IDataAccessFactory dataAccessFactory = (Interfaces.Data.IDataAccessFactory)Reservoir.Plugin.PluginOperator.Get("DataAccessFactory").CreateInstance();
dataAccessFactory 返回为null,所以调用
return dataAccessFactory.CreateDataAccess(connectionString, providerType);出错。
回复

使用道具 举报

2

主题

9

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
 楼主| 发表于 2020-1-21 21:18:02 | 显示全部楼层
我跟踪了.不知道为什么返回空,我是个新手.能帮我把工程调试下吗??

回复

使用道具 举报

0

主题

8

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
发表于 2020-1-22 15:45:01 | 显示全部楼层
你是不是调用别人的组件,那你只有要别人的组件代码才知道的,或是要那个组件的人告诉你怎么用就可以了。如果没办法看到你用Reflect试试看看这个组件的源代码就知道了。
回复

使用道具 举报

3

主题

26

帖子

13.00

积分

新手上路

Rank: 1

积分
13.00
发表于 2020-1-28 02:36:02 | 显示全部楼层
用Reflect把你用的那个DLL反编译过来看一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表