我正在尝试验证一个类的参数.正在测试的代码很好.该错误正在测试中.
我尝试过两种方法,都失败了.
以下是我的尝试:
1:
this.MockImageResizeFilter.Verify(m => m.Filter(this.UploadedFileData, new ImageFilterOptions()
{
Width = 256,
Height = 256,
}));
Run Code Online (Sandbox Code Playgroud)
即使作为第二个参数传递的对象具有相同的属性,这也总是失败.第一个参数验证正常.
2:
this.MockImageResizeFilter.Setup(m => m.Filter(It.IsAny<byte[]>(), It.IsAny<ImageFilterOptions>()))
.Callback<byte[], ImageFilterOptions>((data, options) =>
{
Assert.AreEqual(this.UploadedFileData, data, "data");
Assert.AreEqual(filterOptions.Width, options.Width, "Width");
Assert.AreEqual(filterOptions.Height, options.Height, "Height");
}
);
Run Code Online (Sandbox Code Playgroud)
这总是通过,即使它应该失败.回调中的Asserts确实失败了,但是异常没有传递给外部上下文,因此测试总是通过.
你能帮我找到我做错的事吗?
我在现有代码库中有以下(工作)代码,用于C和C++之间共享的包含文件,在MSVC(2010)和Windows DDK上编译:
struct X {
USHORT x;
} typedef X, *PX;
Run Code Online (Sandbox Code Playgroud)
和:
enum MY_ENUM {
enum_item_1,
enum_item_2
} typedef MY_ENUM;
Run Code Online (Sandbox Code Playgroud)
据我所知,正确的定义应如下所示:
typedef struct {
USHORT x;
} X, *PX;
Run Code Online (Sandbox Code Playgroud)
有下面的表格是否有任何目的?我错过了什么吗?
我刚刚开始学习HTML.在alert()
我的一个变量上做一个给我这个结果[object HTMLInputElement]
.
如何获取在文本字段中添加的数据,我的输入类型是文本?
我好几年没用过C++了,刚刚遇到过这个问题:
program.build({ default_device })
Run Code Online (Sandbox Code Playgroud)
定义是:
cl_int build(
const VECTOR_CLASS<Device>& devices,
const char* options = NULL,
void (CL_CALLBACK * notifyFptr)(cl_program, void *) = NULL,
void* data = NULL) const
Run Code Online (Sandbox Code Playgroud)
那里的花括号是什么?我之前从未见过像这样的函数调用.我假设它与函数指针有关,但这似乎是可选的?
我有一个标准按钮,WinForm
带有一些文字和图像.它看起来像这样:
如何设置按钮以使图像与文本左侧对齐?我试过了ImageAlign
,但似乎没有考虑按钮的文字.
我创建了一个扩展方法,并将其命名空间包含在我的web.config
文件中.扩展方法工作正常,测试代码可以接受.问题是,我仍然收到与找不到命名空间有关的错误.
我得到的ASP .NET错误消息是:
CS1061:'System.Uri'不包含'IsCurrentUrl'的定义,并且没有扩展方法'IsCurrentUrl'接受类型'System.Uri'的第一个参数可以找到(你是否缺少using指令或程序集引用?)
以下是各自的代码.
Web.config文件:
<system.web>
<httpRuntime targetFramework="4.5" />
<compilation debug="true" targetFramework="4.5" />
<pages>
<namespaces>
<add namespace="System.Web" />
<add namespace="System.Web.Helpers" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
<add namespace="System.Web.WebPages" />
<add namespace="MyMainSite2.Library.Extensions" />
</namespaces>
</pages>
</system.web>
Run Code Online (Sandbox Code Playgroud)
扩展方法代码:
namespace MyMainSite2.Library.Extensions
{
public static class UriExtensions
{
#region Public Static Methods
public static bool IsCurrentUrl(this Uri uri, string url)
{
if (String.IsNullOrWhiteSpace(url))
return false;
url = url.Trim().ToLower();
string absolutePath = uri.AbsolutePath.Trim().ToLower();
if (!url.StartsWith("/") …
Run Code Online (Sandbox Code Playgroud) 我想知道以下循环是否创建了对象的副本,而不是给我一个对它的引用.原因是,因为第一个例子没有分配我的数组对象,但是第二个例子没有.
MyObject objects[] = new MyObject[6];
for (MyObject o: objects) {
o = new MyObject();
}
MyObject objects[] = new MyObject[6];
for(int i = 0; i < objects.length; i++) {
objects[i] = new MyObject();
}
Run Code Online (Sandbox Code Playgroud) 我只有一个问题,如何更详细地描述我的错误?
•我将数据库发布到Azure.它工作正常.
•我从桌面运行我的网站(Visual Studio 2010),它在Azure中访问我的数据库没有任何问题.
•当我将我的网站发布到Azure时,我没有收到任何错误.但是当我访问网页时,我得到"HTTP 500内部服务器错误".我需要一个更详细的错误消息.
我有自定义错误模式="关闭".我从"FTP诊断日志"下载但没有任何内容.
我没有使用虚拟机.
有什么想法可以获得更好的错误信息吗?
我正在运行Visual Studio 2013.
当我停止调试我的MVC应用程序时,IIS Express会自动停止.我怎么能阻止这种情况发生?
我有一个简单的程序.它运行.NET 4.5并在Visual Studio 2013中构建.
D:\\MyDir
充满了.xlsx
文件,没有.xls
文件.当我在Windows 8.1 x64上运行该程序时,过滤器*.xls
不返回任何结果.当我在Windows 7 x86上使用相同的.NET版本运行相同的程序时,*.xls
过滤器返回与过滤器相同的结果*.xlsx
.
两个系统上的测试文件夹肯定包含相同的数据.
我错过了什么,或者这是.NET和/或Windows中的错误?
各自的代码:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace throw_test
{
static class Program
{
static void Main()
{
int fileCount1 = Directory.GetFiles("D:\\MyDir", "*.xlsx").Length;
int fileCount2 = Directory.GetFiles("D:\\MyDir", "*.xls").Length;
Console.WriteLine("File Count 1: " + fileCount1);
Console.WriteLine("File Count 2: " + fileCount2);
Console.Read();
}
}
}
Run Code Online (Sandbox Code Playgroud)
编辑1
当我使用Windows 8.1 x64中的命令提示符导航到该目录时:
dir *.xlsx …