小编Fly*_*FoX的帖子

使用Validator类验证DataAnnotations

我正在尝试使用Validator类验证使用数据注释修饰的.

当属性应用于同一个类时,它可以正常工作.但是当我尝试使用元数据类时,它不起作用.我应该对Validator做什么,所以它使用元数据类?这是一些代码..

这工作:

public class Persona
{
    [Required(AllowEmptyStrings = false, ErrorMessage = "El nombre es obligatorio")]
    public string Nombre { get; set; }

    [Range(0, int.MaxValue, ErrorMessage="La edad no puede ser negativa")]
    public int Edad { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

这不起作用:

[MetadataType(typeof(Persona_Validation))]
public class Persona
{
    public string Nombre { get; set; }
    public int Edad { get; set; }
}

public class Persona_Validation
{
    [Required(AllowEmptyStrings = false, ErrorMessage = "El nombre es obligatorio")]
    public string Nombre …
Run Code Online (Sandbox Code Playgroud)

.net c# validation .net-4.0 data-annotations

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

红宝石中的时间操纵

我想创建一个将来20分10秒的DateTime实例.我在irb中尝试使用Time和DateTime,但似乎无法找到真正有意义的方法.我只能向DateTime对象添加天数,只向Time对象添加秒数.

是不是有一个更好的方法,而不是总是将我想要添加的时间转换为秒?

ruby time

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

在Vim中卸载插件

在我的〜/ vim的文件夹中安装很多插件之后,我觉得我没有更多的了解,文件夹的内容,我不觉得在〜/ vim的/插件删除插件卸载插件足够的信心.如果我在其他目录中有文件怎么办?如果文档已经注册(:helptags)但插件将被删除怎么办?是否有任何程序来卸载插件?我真的不希望我的Vim最终像我的Windows一样混乱:-)

vim uninstall

23
推荐指数
4
解决办法
3万
查看次数

具有多个参数的Setter方法(赋值)

我有一个自定义类,并希望能够覆盖赋值运算符.这是一个例子:

class MyArray < Array
  attr_accessor :direction
  def initialize
    @direction = :forward
  end
end
class History
  def initialize
    @strategy = MyArray.new
  end
  def strategy=(strategy, direction = :forward)
    @strategy << strategy
    @strategy.direction = direction
  end
end
Run Code Online (Sandbox Code Playgroud)

目前这不符合预期.使用时

h = History.new
h.strategy = :mystrategy, :backward
Run Code Online (Sandbox Code Playgroud)

[:mystrategy, :backward]被分配给策略变量并且方向变量保持不变:forward.
重要的是我希望能够为direction参数分配标准值.

任何提供这项工作的线索都受到高度赞赏.

ruby

16
推荐指数
1
解决办法
4250
查看次数

Vim中的Ruby Code Autoindentation

我已经将一个Ruby示例复制到了Vim中,但事实证明这弄乱了缩进.我试图让Vim应用Ruby特定的缩进.为此,我在全局vimrc文件中取消注释以下行:

if has ("autocmd")
  filetype plugin indent on
endif
Run Code Online (Sandbox Code Playgroud)

gg=G在Vim 压了.现在它改变了一些缩进,但它仍然有一些错误:

  • 类定义不会缩进.
  • 注释不会缩进并保留在行的开头.

ruby vim indentation

7
推荐指数
1
解决办法
655
查看次数

在Ruby中绘制点和矩形

我正在寻找一种简单的方法来绘制10点和矩形,以便能够看到我的算法出错的地方.我看了看gnuplot,但看起来特别糟糕的是绘制矩形.

ruby plot svg

7
推荐指数
2
解决办法
2583
查看次数

如何创建DRY HTML?

我有一个小的静态网站,这个网站的每个页面都有一个菜单和一个页脚.

确保菜单和页脚中的更改只需要在一个地方完成的最佳方法是什么,这使我能够轻松更新包含它们的所有页面.

我正在寻找一种简单的模板系统,使我能够将文件组合在一起.

我看了一下ruby .erb文件,但它们看起来太复杂了,因为我必须安装rails并使我的web服务器能够使用它.

html templates dry

6
推荐指数
1
解决办法
2659
查看次数

AutoMapper,如何在映射对象之间保持引用?

我正在使用AutoMapper将UI模型转换为POCO,之后我使用DataContractSerializer将其序列化为XML,以便保留它们之间的引用.

问题是,在映射时,这些实体之间的引用会丢失.

UI类相互引用,但映射过程为每个引用创建新实例,因此原始关系被破坏:(

让我解释:

我有2个Person类型的实体

    Person 
    { 
        List<House> OwnedHouses 
    }
Run Code Online (Sandbox Code Playgroud)

而这2个对象

约翰 谁拥有

  • House1

请问 谁也拥有

  • House1

当AutoMapper正确映射每个Person时,但它也将House1映射为两个不同的实例!!

所以我有两份House1.John拥有他的House1(#1)并且Will拥有他的House1(#2).

他们不再联系了.

有没有办法保持最初存在的关系?

谢谢.

编辑:其实我的拥有是这样的:

文档包含ChildDocuments列表.每个ChildDocument都有一个Designables列表(Rectangles,Lines,Ellipses ...)和一个特殊的可设计名为ChildDocumentAdapter,它包含自己的ANOOTHER ChildDocument.这是麻烦,它可以引用另一个ChildDocument.

图

c# model reference poco automapper

6
推荐指数
1
解决办法
3086
查看次数

从irb或pry运行单元测试

有没有办法从irb或pry会话中运行测试文件?

我试过load './testfile.rb,但是这不会在testfile中运行测试.

我的Testfile看起来像这样:

require 'test/unit'
require './sudoku.rb'

class SudokuTest < Test::Unit::TestCase
  def test_initialize
    assert_nothing_raised do
      Sudoku.new(Array.new(9*9))
    end
    assert_nothing_raised do
      Sudoku.new(Array.new(9*9,Field.new(nil)))
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

ruby testing irb pry

5
推荐指数
1
解决办法
1640
查看次数

如何在powershell中使用字符串列表过滤列表

我有一个对象列表,想要过滤名称类似于列表中的字符串之一的所有元素。我当前的方法是使用where-object,但这会导致对 where-object 的一长串调用。

Get-AppxPackage |
    where-object {$_.name -notlike "*store*"} |
    where-object {$_.name -notlike "*MSPaint*"} ...
Run Code Online (Sandbox Code Playgroud)

我想减少这里所需的样板,因为我预计字符串列表会变得相当大。
我还希望能够在另一个输出上使用过滤器,这似乎我目前只能通过复制粘贴 where-object 块来实现。

powershell

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