如果我有一组数据库表(例如,在Access文件中),并且需要根据规则集验证此集合中的每个表,该规则集在所有表中都有通用规则,以及特定于一个或一个子集的单个规则.表,有人可以推荐一个好的设计模式来研究吗?
具体来说,我想避免类似的代码:
void Main()
{
ValidateTable1();
ValidateTable2();
ValidateTable3();
}
private void ValidateTable1()
{
//Table1 validation code goes here
}
private void ValidateTable2()
{
//Table2 validation code goes here
}
private void ValidateTable3()
{
//Table3 validation code goes here
}
Run Code Online (Sandbox Code Playgroud)
此外,我决定使用log4net记录所有错误和警告,以便可以声明每个方法void,并且不需要返回任何内容.这是一个好主意还是更好的创建某种ValidationException捕捉所有异常并将它们存储在一起List<ValidationException>之前将它们全部打印出去?
我确实找到了这个,看起来它可能有用,但我希望能找到一些代码样本来解决.有什么建议?过去有没有人做过类似的事情?
对于某些背景,程序将使用C#或VB.NET编写,并且这些表很可能存储在Access或SQL Server CE中.
所以,在询问这个问题之前,我确实搜索了谷歌和SO.基本上我有一个DLL,它有一个编译成它的表单.表单将用于向屏幕显示信息.最终它将是异步的,并在dll中暴露了大量的自定义.现在我只想让它正确显示.我遇到的问题是我通过在Powershell会话中加载它来使用dll.因此,当我尝试显示表单并让它到达顶部并具有焦点时,显示在所有其他应用程序上没有问题,但我不能在我的生活中让它显示在Powershell窗口上.这是我目前用来尝试显示的代码.我确信,一旦我弄明白,大多数都不会被要求,这只是代表我通过谷歌找到的所有东西.
CLass Blah
{
[DllImport("user32.dll", EntryPoint = "SystemParametersInfo")]
public static extern bool SystemParametersInfo(uint uiAction, uint uiParam, uint pvParam, uint fWinIni);
[DllImport("user32.dll", EntryPoint = "SetForegroundWindow")]
public static extern bool SetForegroundWindow(IntPtr hWnd);
[DllImport("User32.dll", EntryPoint = "ShowWindowAsync")]
private static extern bool ShowWindowAsync(IntPtr hWnd, int cmdShow);
private const int WS_SHOWNORMAL = 1;
public void ShowMessage(string msg)
{
MessageForm msgFrm = new MessageForm();
msgFrm.lblMessage.Text = "FOO";
msgFrm.ShowDialog();
msgFrm.BringToFront();
msgFrm.TopMost = true;
msgFrm.Activate();
SystemParametersInfo((uint)0x2001, 0, 0, 0x0002 | 0x0001);
ShowWindowAsync(msgFrm.Handle, WS_SHOWNORMAL);
SetForegroundWindow(msgFrm.Handle);
SystemParametersInfo((uint)0x2001, 200000, 200000, 0x0002 …Run Code Online (Sandbox Code Playgroud) 我有一个运行我的域名的PHP服务器.出于测试目的,我在虚线四核IP上运行asp.net.我希望通过PHP或某种DNS/.htaccessvoodoo 将它们链接在一起.
因此,如果我转到www.mydomain.com/test它重定向(但保留www.mydomain.com/test浏览器地址栏中的()的URL,页面由虚线四核IP asp.net框提供.
细节:
这不是我必须这样做的必要条件,但如果有一个简单的方法可以做到这一点而不必改变太多,我会这样做.(即如果没有一个简单的解决方案,我可能不会这样做,所以不要担心挖得太深)
我正在对SourceForge SVN存储库使用TortoiseSVN.我想将文件从一个文件夹移动到另一个文件夹,以便维护其修订历史记录.这可能吗?如果是这样,你怎么做?
(我当前的策略是将文件复制到新文件夹并检入,然后从当前文件夹中删除该文件.)
我见过人们在他们的HTML中做这样的事情:
<!--[if IE]>
<link rel="stylesheet" href="ie.css" type="text/css" />
<![endif]-->
Run Code Online (Sandbox Code Playgroud)
这是否适用于所有现代浏览器,是否有一个浏览器类型列表可以使用这种if语句?
编辑
感谢罗斯.有兴趣了解gt,lt,gte和lte.
我想做这个:
//*福
返回名称以fu结尾的所有节点,例如<tarfu />和<snafu />,但不是<fubar />
我有一个列表Foo。Foo 具有属性Bar和Lum. 有些Foos 具有相同的 值Bar。如何使用 lambda/linq 对我的FoosBar进行分组,以便我可以迭代每个分组的Lums?
我有一个针对Flash 7的大型代码库,包含很多 AS2类.我希望我能够将Flex用于任何新项目,但我们路线图中的许多新内容都是对旧代码的补充.
AS2和AS3的语法通常是相同的,所以我开始想知道将当前代码库移植到Flex/AS3有多难.我知道所有与UI相关的东西都是iffy(目前UI是在运行时生成的,有很多createEmptyMovieClip()和attachMovie()东西),但是UI和控制器/模型的东西大多是分开的.
有没有人尝试将AS2代码的大型代码库移植到AS3?这有多难?你遇到了什么样的陷阱?有关进行此类项目的方法的任何建议吗?
寻找一个字符串传递给String#matches(String),它将匹配IPv4,另一个匹配IPv6.