小编Mic*_*ael的帖子

在C#中获取两个数组之间的"差异"?

假设我有这两个数组:

var array1 = new[] {"A", "B", "C"};
var array2 = new[] {"A", "C", "D"};
Run Code Online (Sandbox Code Playgroud)

我想得到两者之间的差异.我知道我可以用几行代码编写这个,但我想确保我没有错过内置语言功能或LINQ扩展方法.

理想情况下,我最终会得到以下三个结果:

  • 不在array1中的项目,但在array2("D")中
  • 不在array2中的项目,但在array1("B")中
  • 两者中的项目

提前致谢!

c# arrays

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

如何使用msbuild下载文件?

是否有内置的方法使用HTTP将文件下载到本地目录?

我可以打算忘记或编写自定义任务,但我想确保没有现成的方法来实现这一点.

提前致谢!

msbuild msbuildcommunitytasks

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

如何在类上使用哈希键作为方法?

我有一个类和一个哈希.如何使用键作为方法名称,使哈希的成员动态地成为类的方法?

class User
  def initialize
    @attributes = {"sn" => "Doe", "givenName" => "John"}
  end
end
Run Code Online (Sandbox Code Playgroud)

例如,我希望能够得到以下输出Doe:

u = User.new
puts u.sn
Run Code Online (Sandbox Code Playgroud)

ruby

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

如何在具有名为"valid"的列的数据库上使用ActiveRecord?(DangerousAttributeError)

我正在访问一个我无法更改的数据库,它有一个名为valid defined 的列.每当我尝试访问属性时,我都会遇到以下异常:

有效?由ActiveRecord定义(ActiveRecord :: DangerousAttributeError)

异常是有道理的,但由于我无法更改数据库,如何解决此错误?

我尝试"覆盖"该属性,但我不知道如何删除原始列.我可以成功调用这个valid_column方法,但是每当我尝试访问数据库中定义的另一个属性时,我都会得到相同的异常.它似乎仍在尝试映射有效列.

  def valid_column=(valid)
    write_attribute(:valid, valid)
  end
  def valid_column
      read_attribute(:valid)
  end
Run Code Online (Sandbox Code Playgroud)

我不确定这是否重要,但以下是我的环境的详细信息:

  • Windows Ruby 1.8.6
  • Linux服务器上的Informix数据库
  • activerecord(2.3.4)
  • activerecord-informix-adapter(1.0.0.9250)
  • ruby-informix(0.7.1)

提前致谢!

informix activerecord ruby-on-rails

14
推荐指数
1
解决办法
6282
查看次数

在WPF中并排制作标签和文本框的预期方法是什么?

我会经常用这个:

<StackPanel>
  <StackPanel Orientation="Horizontal">
    <Label>Username:</Label>
    <TextBox />
  </StackPanel>
  <StackPanel Orientation="Horizontal">
    <Label>Password:</Label>
    <PasswordBox />
  </StackPanel>
</StackPanel>
Run Code Online (Sandbox Code Playgroud)

但这是一种常见的情况,我觉得有一种方法可以减少标记.

此外,使用如此多的堆栈面板会对性能产生影响吗?

谢谢!

.net wpf xaml

12
推荐指数
2
解决办法
6781
查看次数

如何在Ember.js中重复一个资源

我有一个页面资源,使用网址中的页面标题.

App.Router.map(function () {
    this.resource('page', {
        path: '/:page_id'
    });
});

App.PageRoute = Ember.Route.extend({
  serialize: function(model) {
    return { page_id: model.title};
  }
});
Run Code Online (Sandbox Code Playgroud)

这在jsbin中工作得很好.但是,我想将子页面嵌套在url中,如下所示:

本地主机/#/ main_page/SUB_PAGE

我试图创建一个子资源(jsbin),但我不确定它是否是正确的方法.

App.Router.map(function () {
    this.resource('page', {path: '/:page_id'},
                  this.resource('subpage', {path: '/:page_id/:subpage_id'}));
});
Run Code Online (Sandbox Code Playgroud)

我的尝试有两个主要问题:我必须重复我的页面视图,并且不会在网址中保留父页面.我越来越:

本地主机/#/未定义/ SUB_PAGE

我正朝着正确的方向前进吗?这只能用一种资源来完成吗?

提前致谢!

javascript ember.js

11
推荐指数
1
解决办法
315
查看次数

使用MSBuild任务从csproj获取Content项

我有一个MSBuild文件,我正在构建这样的C#项目:

<ItemGroup>
    <ProjectsToBuild Include="./source/ProjectA/ProjectA.csproj"/>
    <ProjectsToBuild Include="./source/ProjectB/ProjectB.csproj"/>
</ItemGroup>

<Target Name="Build">
    <MSBuild Projects="@(ProjectsToBuild)" Targets="Build">
        <Output ItemName="ProjectOutputs" TaskParameter="TargetOutputs"/>
    </MSBuild>
    <Message Text="@ProjectOutputs"/>
</Target>
Run Code Online (Sandbox Code Playgroud)

我成功获取了一个包含所有构建的.dll文件的Item:

Build:
    c:\code\bin\ProjectA.dll;c:\code\bin\ProjectB.dll
Run Code Online (Sandbox Code Playgroud)

我还想从每个项目中获取Content项而不修改.csproj文件.在微软.targets文件中挖掘之后,我几乎能够使用它:

<MSBuild Projects="@(ProjectsToBuild)" Targets="ContentFilesProjectOutputGroup">
    <Output ItemName="ContentFiles" TaskParameter="TargetOutputs"/>
</MSBuild>
<Message Text="@(ContentFiles->'%(RelativeDir)')"/>
Run Code Online (Sandbox Code Playgroud)

这种方法的问题是没有正确设置RelativeDir.我正在获得完整的路径而不是相对的:

Build:
    c:\ProjectA\MyFolder\MyControl.ascx;c:\ProjectB\MyOtherFolder\MyCSS.css;
Run Code Online (Sandbox Code Playgroud)

代替:

Build:
    MyFolder\MyControl.ascx;MyOtherFolder\MyCSS.css;
Run Code Online (Sandbox Code Playgroud)

是否有可以传递给MSBuild任务的属性,这将使RelativeDir行为正常?

或者,更好的是,是否有更简单的方法来获取内容项?

msbuild

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

众所周知的项目约1密耳.代码行?

我知道这个问题对我的情况非常具体,似乎不会给社区带来太多好处,但对于一些人来说,看看我们是否能得到一些好的答案可能会很有趣.

有没有人知道任何代码行约为100万的项目?

我正在将一些东西放在一起进行管理,我希望将我们的软件(大约一百万行代码)与其他几个代码进行比较.

我知道使用代码行是很有争议的,例如测量生产率; 但是,我正在寻找的是,使用这个统计数据作为我们产品持续维护的一小部分大型演示.

维基百科有一些样本(源代码行 - 维基百科),但它们太大了.

任何帮助是极大的赞赏.

谢谢!

maintenance

0
推荐指数
1
解决办法
597
查看次数