问题标签 [nullreferenceexception]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1547 浏览

c# - System.NullReferenceException with WhoCanHelpMe Unit Test

I'm working with a test project based on WhoCanHelpMe, which is based on Sharp Architecture, NHibernateValidator, etc. As its written the when_the_profile_tasks_is_asked_to_create_a_profile unit test creates the profile object and saves it without issue.

Now the profile object is a CreateProfileDetails type that derives from their own ValidatableValueObject which inherits the IValidatable interface.

The problem surfaces when my class is based on an Entity rather than their ValidatableValueObject. When the test is run a System.NullReferenceException because Validator is null.

I'm afraid that I'm at a loss to resolve this bad behavior. Does anyone have some suggestions to get to the bottom of this?

Thanks,

-Ted-

This is the stack trace:

This is the class hierarchy:

Source code is here http://code.google.com/p/sharp-architecture/source/browse/trunk/src/SharpArch/SharpArch.Core/DomainModel/ValidatableObject.cs>

Source code for validation registration: (sorry I'm a new user and can't post this as a link so you'll have to copy/paste) whocanhelpme.codeplex.com/SourceControl/changeset/view/58203#883241

0 投票
1 回答
1153 浏览

c# - 使用 Int32 强制转换枚举项 0 时查询参数值为 Null

当我使用从零开始转换为 Int32 的 Enum 中的第一项作为查询参数时,参数值为 null。我通过简单地将第一项设置为 1 来解决它,但我想知道这里到底发生了什么?这个让我摸不着头脑。为什么参数值被视为null,而不是0?

0 投票
2 回答
2703 浏览

c# - 文件或程序集无法加载错误

我正在开发一个创建 .msi 文件的安装程序。有一个与之关联的 CustomAction 程序,它是用 C# 编写的。在此 CustomAction 程序中创建了三个 COM 对象引用,这些引用是其正常工作所必需的。它们如下。

  1. 活动 DS IIS 命名空间提供 (C:\Windows\System32\inetsrv\adsiis.dll)
  2. Windows 脚本宿主对象模型 (C:\Windows\System32\wshom.ocx)
  3. NetFwTypeLib (C:\Windows\System32\FirewallAPI.dll)

作为补充信息,以下是我在程序中使用这些 DLL 的任务。

  1. 为特定文件类型设置 MIME 设置。
  2. 创建文件夹的桌面快捷方式。
  3. 将程序注册为防火墙例外

.

现在,这是我的问题。当我在 Visual Studio 中重建 C# 程序并执行 CustomAction 程序时,它工作正常,我可以像魅力一样完成上述三个任务。但是,当我实际构建 .msi 并尝试执行它并在我的系统上安装程序时,它会给出错误。我使用的是日文操作系统,所以它会给出日文错误,所以我会尽量将错误消息翻译成英文。错误是这样的:

*

无法加载文件或程序集“Interop.IISOle,版本 = 1.0.0.0,文化 = 中性,PublicKeyToken = null”或其依赖项之一。找不到指定的文件。

*

给出此特定错误消息是因为它与第一个 dll (adsiis.dll) 相关,因为它是包含 IISOle 命名空间的那个。同样,它给出了与我从程序中引用的所有三个 COM 对象相关的错误消息。现在我可以从中理解的是,不知何故,当这段代码在 .msi 文件中时,它找不到合适的 COM 对象。我真的很困惑为什么会发生这种情况,因为当我尝试安装程序时,即使在我用来编写 CustomAction 代码的同一台机器上,安装程序也会出现同样的错误。有趣的是,它可以通过 Visual Studio 界面完美执行。请帮我解决这个问题。提前致谢!

请注意,我正在使用 Windows Vista Business,但我需要我的安装程序才能安装在从 Windows Server 2003 到 Windows 7 的各种 Windows 操作系统上。

0 投票
4 回答
1304 浏览

c# - 代码中的空引用异常

我在“_attr.Append(xmlNode.Attributes["name"]);”上收到 NullReferenceException 错误。

teamprofiles.xml 文件看起来像

我正在尝试提取 ArrayList 中所有团队的名称。然后我将提取所有团队的所有统计数据并将它们显示在我的应用程序中。你能帮我解决那个空引用异常吗?

0 投票
1 回答
402 浏览

c# - 0 - 65535 之间的第一个内存地址的空引用

我想了解更多关于内存的信息,但我无法从谷歌中找到它,如果这是一个愚蠢的问题,请原谅我。

为什么下面的代码,在 C# 中访问内存地址 0(最多 65535)会抛出 NullReferenceException

字节*指针=(字节*)0;

字节测试 = *指针;

提前非常感谢!

0 投票
3 回答
17843 浏览

c# - ASP.NET C# DataList FindControl & Header/Footer 模板导致错误

每当我使用 DataList 的 Header 或 Footer 模板时,FindControl 都无法找到 DataList 的标签部分,并抛出 NullReferenceException。

我的 SQLDataSource 和 DataList(没有页眉和页脚模板 - 有效):

使用页眉和页脚模板 - 不起作用。

选择事件:

为什么会发生这种情况?

谢谢

0 投票
3 回答
1586 浏览

asp.net - Problem with Unit testing of ASP.NET project (NullReferenceException when running the test)

I'm trying to create a bunch of MS visual studio unit tests for my n-tiered web app but for some reason I can't run those tests and I get the following error -

"Object reference not set to an instance of an object"

What I'm trying to do is testing of my data access layer where I use LINQ data context class to execute a certain function and return a result,however during the debugging process I found out that all the tests fail as soon as they get to the LINQ data context class and it has something to do with the connection string but I cant figure out what is the problem.

The debugging of tests fails here(the second line):

And my test is as follows:

The method which I call from DAL is:

So basically everything fails after it reaches the 1st line of DA layer method and when it tries to instantiate the LINQ data access class...

I've spent around 10 hours trying to troubleshoot the problem but no result...I would really appreciate any help!

UPDATE: Finally I've fixed this!!!!:) I dont know why but for some reasons in the app.config file the connection to my database was as follows:

AttachDbFilename=|DataDirectory|\EICDatabase.MDF

So what I did is I just changed the path and instead of |DataDirectory| I put the actual path where my MDF file sits,i.e

C:\Users\1\Documents\Visual Studio 2008\Projects\EICWebSystem\EICWebSystem\App_Data\EICDatabase.mdf

After I had done that it worked out!But still it's a bit not clear what was the problem...probably incorrect path to the database?My web.config of ASP.NET project contains the |DataDirectory|\EICDatabase.MDF path though..

0 投票
1 回答
703 浏览

asp.net - 在 MVC 中验证表单时如何检查空对象引用

我正在尝试在 asp.net MVC 框架中验证表单。

我暂时专注于服务器端验证。我遇到了一个错误,我不确定如何纠正。

System.NullReferenceException:对象引用未设置为对象的实例。

引发错误的代码是:

当我在该字段中放置空格时,它会完全按照我的意愿执行,但是如果我将该字段留空并按提交,我会收到错误消息。

避免此错误并仍然验证空白表单字段的最佳方法是什么?

谢谢大家-

0 投票
2 回答
498 浏览

vb.net - 调试类库插件时遇到问题

我有一个 Windows 窗体应用程序,我试图在其中使用一个插件(类库)。在代码中,我让它从 dll 文件加载程序集,这意味着我无法调试。此外,我还没有找到如何编译库,所以我不得不使用调试的 dll 版本进行测试。我遇到了一个错误,在该错误中,我创建了一个新对象并通过接口将该数据发送到插件,以尝试从插件中检索空白的平板组框。但是,我没有将参数作为新对象读取,而是设法单步执行了一次代码(不要问我怎么做,我不知道,也无法重复),而且代码似乎正在注册参数为“无”,因此我在主程序中收到空引用错误。

有没有更好的方法来调试这个机制并找出问题所在?关于问题可能是什么的任何想法。当我阅读时,这似乎有点模糊,我不知道如何描述它,但如果有人愿意查看正在发生的事情并且我没有让自己被理解,我愿意现在主持一个连接会议很好。

0 投票
2 回答
2032 浏览

c# - 如何使用空参数调用委托?

如果我在调用期间尝试将空参数传递给委托,则会收到空异常。代码如下所示:

问题出在这条线上:

如果变量“照片”为空。在调用期间传递空参数的正确方法是什么?谢谢!