小编sta*_*ica的帖子

从DB模型中消除NULLable列的选项(为了避免SQL的三值逻辑)?

不久前,我一直在阅读CJ Date的SQL和关系理论一书.作者因批评SQL的三值逻辑(3VL)而闻名.1)

作者强调了为什么在SQL中应该避免使用3VL,但是他没有概述如果不允许使用可空列的数据库模型的样子.我已经考虑了一点,并提出了以下解决方案.如果我错过了其他设计选项,我想听听他们的意见!

1)日期对SQL 3VL的批评反过来也受到了批评:请参阅 Claude Rubinson撰写的这篇论文(包括CJ Date的原始批评).


示例表:

举个例子,请看下面的表,我们有一个可以为空的列(DateOfBirth):

#  +-------------------------------------------+
#  |                   People                  |
#  +------------+--------------+---------------+
#  |  PersonID  |  Name        |  DateOfBirth  |
#  +============+--------------+---------------+
#  |  1         |  Banana Man  |  NULL         |
#  +------------+--------------+---------------+
Run Code Online (Sandbox Code Playgroud)

选项1:NULL通过标志和默认值进行模拟:

不是使列可为空,而是指定任何默认值(例如1900-01-01).另一BOOLEAN列将指定是否DateOfBirth应该忽略值in 或者它是否实际包含数据.

#  +------------------------------------------------------------------+
#  |                              People'                             |
#  +------------+--------------+----------------------+---------------+
#  |  PersonID  |  Name        |  IsDateOfBirthKnown  |  DateOfBirth  |
#  +============+--------------+----------------------+---------------+ …
Run Code Online (Sandbox Code Playgroud)

sql null relational-database three-valued-logic

8
推荐指数
1
解决办法
933
查看次数

如何在C#中打开Windows 7事务处理文件

据我所知,Windows 7支持事务处理文件.我如何在C#中使用它们?

.net c# transactions file windows-7

8
推荐指数
1
解决办法
1224
查看次数

插件架构中的DI(Autofac):每个插件有一个单独的DI容器吗?

我试图将DI(使用Autofac)引入现有的Windows窗体应用程序.

此应用程序具有基本的插件体系结构,其中每个插件都显示其自己的表单.启动时,应用程序扫描已注册的程序集以查找实现的类型,IPlugin然后使用Activator.CreateInstance以下命令激活它们:

public interface IPlugin
{
    Form MainForm { get; }
}
Run Code Online (Sandbox Code Playgroud)

无法改变这个给定的框架.这意味着,每个插件类都通过非DI方式实例化,在我看来,因此我必须为每个插件引导一个单独的DI容器.

我的问题是,ContainerBuilder每个插件创建一个单独的容器OK还是合理有效吗?(将有大约10种不同的插件.)或者是否应该只有一个DI容器用于整个应用程序?

我在下面提供了一些当前解决方案的示例代码.


using Autofac;
using System.Windows.Forms;

public class Plugin : IPlugin  // instantiated by Activator
{
    public Form MainForm { get; private set; }

    public Plugin()  // parameter-less constructor required by plugin framework
    {
        var builder = new ContainerBuilder();
        builder.RegisterModule(new Configuration());
        var container = builder.Build();

        MainForm = container.Resolve<MainForm>();
        // ^ preferred to new MainForm(...) because this …
Run Code Online (Sandbox Code Playgroud)

c# add-in dependency-injection autofac

8
推荐指数
1
解决办法
2789
查看次数

使用overflow-x进行水平滚动

div根据里面的图像,我想知道是否仍然没有一种好的方法可以伸展和水平滚动.毕竟,现在是2011年!

这样mega-width做的伎俩,但mega-space如果没有填充图像,则留空.
如果填充太多,则不显示图像.对于jQuery也一样.以下情况是我在谷歌搜索后可以做的最好的情况,但它不够可靠.

谢谢你的时间.


* {
  margin:0;
  padding:0;
}

#one {
  width: 200px;    
  height: 250px;
  overflow-x: auto;
  overflow-y: hidden;
}

#two {
  width: 10000em;
}

#two img {
  float: left;
}

$(document).ready(function() {
  var total = 0;
  $(".calc").each(function() {
    total += $(this).outerWidth(true);
  });
  $("#two").css('width', total);
  alert(total);
});
Run Code Online (Sandbox Code Playgroud)
<div id="one">
  <div id="two">
    <img src="images/testimage3.jpg" width="480" height="192" class="calc">
    <img src="images/testimage3.jpg" width="480" height="192" class="calc">
    <img src="images/testimage3.jpg" width="480" height="192" class="calc">
    <img src="images/testimage3.jpg" width="480" height="192" class="calc">
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

css jquery image overflow scrollbar

8
推荐指数
1
解决办法
1万
查看次数

我应该在Windows窗体项目中使用数据绑定吗?

我正在使用Winforms开发一个应用程序,并且使用了一个数据绑定我的网格的路径BindingSource.我的问题是:

这是最好的方法吗?我应该手动填充单元格而不是让它BindingSource为我做吗?它会导致进一步的问题吗?如果在任何情况下数据绑定会产生问题,那将是有用的.

我的一位同事发誓黑色和蓝色不使用数据绑定.我真的不相信他说的话,所以任何利弊都是有价值的.

在连接到单个数据库和可编辑DataGrid的多用户应用程序的情况下,如何解决更新数据的并发问题?

c# data-binding winforms

8
推荐指数
2
解决办法
8425
查看次数

如何按高度对DIV进行排序?

我有三个divs,我想按高度对它们进行排序,从最大到最小.

<div>smallest</div>
<div>largest</div>
<div>middle</div>
Run Code Online (Sandbox Code Playgroud)

任何的想法?

html sorting jquery height

8
推荐指数
1
解决办法
2505
查看次数

使用ObservableCollection <T>时,是否仍需要在类型T上实现INotifyPropertyChanged?

ObservableCollection<T>笔记的MSDN参考页面:

"集合中的对象必须满足绑定源概述中描述的要求.特别是,如果您使用OneWayTwoWay(例如,您希望在源属性动态更改时更新UI),则必须实现合适的属性更改了通知机制,例如INotifyPropertyChanged接口."

既然ObservableCollection<T>已经实现了INotifyPropertyChanged,为什么我需要再次实施INotifyPropertyChangedT也?

.net observablecollection inotifypropertychanged

8
推荐指数
1
解决办法
2122
查看次数

jQuery Mobile显示隐藏的选择元素

请参阅此select元素display:none.在jQuery Mobile中,它显示尽管如此:

<select id="dddd" name="dddd"
        data-mini="true" data-native-menu="false" data-theme="c"
        onChange=""
        style="display:none">     
  <option value="1">An optinos</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我试图显示/隐藏select依赖于其他用户操作的jQuery Mobile 元素,因此我为什么要这样做.

有任何想法吗?

jquery jquery-mobile

8
推荐指数
1
解决办法
1万
查看次数

VB中"公共共享"子/函数的含义

任何人都可以在VB中解释我需要使用Public Shared Sub,因此可以从其他表单访问它.

但这个"公共"和"共享"意味着什么?

  • 谁是公众
  • 与谁分享

如果是公共共享,这是否意味着其他一些软件或"某些黑客应用程序"可以更轻松地访问此子及其价值?

vb.net vb6-migration

8
推荐指数
2
解决办法
2万
查看次数

在现场测试中,"具体执行"是什么意思?

当我学习古兰经测试的概念时,我遇到了"具体和符号执行"这两个术语.(那里提到的文章,"CUTE:C的一个古老的单元测试引擎",在其摘要部分使用该术语.)

"所使用的方法建立在先前的工作基础上,结合了符号和具体执行,更具体地说,使用这样的组合来生成测试输入以探索所有可行的执行路径."

任何人都可以确认"具体执行"是什么意思吗?尽管我搜索,但我找不到任何直接引用/明确陈述.

根据我的理解,"具体执行"意味着"执行具有实际输入值的程序,而不像符号执行,它假定符号值为变量,输入等".如果我错了,请纠正我(如果可能的话,用一个小例子).

testing formal-verification execution

8
推荐指数
1
解决办法
3272
查看次数