有没有办法在WPF和实体框架中使用DataAnnotations进行验证?
是否可以在装配中的每个测试之前运行特定方法?
我知道TestInitialize属性,但这个属性有"类范围".如果它在Test类中定义,它将在此类的每个测试之前执行.
我想定义一个方法,该方法将在整个程序集中定义的每个测试之前执行.
作为编写编译器的先驱,我正在尝试理解Windows(32位)可移植可执行格式.特别是我想看一个简单的可执行文件的例子,除了正确加载,运行和退出之外什么都不做.
我已经尝试编写和编译一个简单的C main函数,除了生成的.exe是〜22KB并且包含许多来自KERNEL32.DLL的导入(可能由LIBC用于设置环境,堆等).甚至DOS标题也可能更小(它当前打印默认的'此程序无法在DOS模式下运行').
最小的Windows 32位可执行文件的结构是什么?
我有一个存储过程执行一些参数验证,如果参数无效,应该失败并停止执行.
我的第一个错误检查方法如下所示:
create proc spBaz
(
@fooInt int = 0,
@fooString varchar(10) = null,
@barInt int = 0,
@barString varchar(10) = null
)
as
begin
if (@fooInt = 0 and (@fooString is null or @fooString = ''))
raiserror('invalid parameter: foo', 18, 0)
if (@barInt = 0 and (@barString is null or @barString = ''))
raiserror('invalid parameter: bar', 18, 0)
print 'validation succeeded'
-- do some work
end
Run Code Online (Sandbox Code Playgroud)
由于严重性18不会停止执行并且"验证成功"与错误消息一起打印,因此这不起作用.
我知道我可以在每次raiserror之后添加一个返回但这对我来说看起来很难看:
if (@fooInt = 0 and (@fooString is null or @fooString = …Run Code Online (Sandbox Code Playgroud) 我们已经在SO中看到了很多关于c#中的类vs结构的讨论.最后得出的结论是它的堆/堆内存分配.并建议在小型数据结构中使用结构.
现在我有一种情况来决定这两种选择中的简单数据存储.在我们的应用程序中,我们有数千个类,只是作为简单的数据存储(仅暴露的公共字段),它们在不同的模块和服务之间传递.
根据我的理解,出于性能原因,我觉得最好继续使用struct而不是类.因为这些是简单的数据结构,所以只能充当数据存储.
在继续这一过程之前,我需要经历过这场斗争的人们的一些专家建议.
我有一些代码示例,我想在HTML文档中发布.我用<code>标签包装它们但是我希望它们的样式可以保留换行符.我可以用<pre>标签封装它们但我更喜欢使用CSS.
我在IE7中尝试了以下内容(根据此引用应该可以工作)但没有快乐(删除换行符):
code {
white-space: pre;
}
Run Code Online (Sandbox Code Playgroud)
这可能吗?
我有以下扩展方法:
public static void ThrowIfArgumentIsNull<T>(this T value, string argument)
where T : class
{
if (value == null)
{
throw new ArgumentNullException(argument);
}
}
Run Code Online (Sandbox Code Playgroud)
这是它的用法的一个例子....
// Note: I've poorly named the argument, on purpose, for this question.
public void Save(Category qwerty)
{
qwerty.ThrowIfArgumentIsNull("qwerty");
....
}
Run Code Online (Sandbox Code Playgroud)
工作100%罚款.
但是,我不喜欢我必须提供变量的名称,只是为了帮助我的异常消息.
我想知道是否有可能重构扩展方法,所以可以像这样调用它...
qwerty.ThrowIfArgumentIsNull();
Run Code Online (Sandbox Code Playgroud)
它会自动确定变量的名称是'qwerty',因此将其用作ArgumentNullException的值.
可能?我假设反思可以做到这一点?
我想使用PaaS提供商开发我们的新项目.我将在PHP中开发primary,但是希望该服务也可以提供其他语言(以及可用的附加组件,如MongoDB,Memcached,redis等).我似乎有一些PaaS,如PHPfog(和AppFog),dotCloud,orchestra.io,Red Hat的OpenShift,Pagoda Box等等.
在所有这些中,我认为我最喜欢dotCloud.但想知道PaaS上一些重要参与者之间的任何评论,建议和比较.
你们会推荐什么?
我可以在NoSql数据库中使用实体框架代码优先方法吗?对于具有大数据的应用程序,NoSql如何优于SQL数据库.
.net ×3
c# ×2
asp.net-mvc ×1
base64 ×1
class ×1
css ×1
dotcloud ×1
encoding ×1
excel ×1
excel-vba ×1
executable ×1
mstest ×1
nosql ×1
openshift ×1
paas ×1
phpfog ×1
portability ×1
sql ×1
sql-server ×1
struct ×1
validation ×1
vba ×1
winapi ×1
windows ×1
wpf ×1