小编chu*_*nce的帖子

在VS2010中扩展/收缩循环和if/then语句?

这是我在VS2010中遇到的烦人的问题,无论如何我可以扩展和收缩条件语句和循环,就好像它们是方法一样?我意识到答案可能是我应该将它们重构为方法,如果我达到这一点,但无论如何都要幽默我.我以为我曾经能做到这一点.

编辑,一个例子:

public void DoSomething() 
{
  if (1 < 2) {
  // long statement here
  }
}
Run Code Online (Sandbox Code Playgroud)

在VS2010的左边,我可以收缩"DoSomething"......然而,我不能签约if/then声明.

visual-studio-2010

10
推荐指数
2
解决办法
7104
查看次数

.NET DateTime未在ToShortTimeString()中返回AM/PM

我遇到了一个让我发疯的问题.在我的应用程序(ASP.NET MVC2 /.NET4)中,我只是运行这个:

DateTime.Now.ToShortTimeString()
Run Code Online (Sandbox Code Playgroud)

我见过的所有例子都表明我应该得到类似的东西:12:32 PM但是我12:32没有AM/PM.

我启动了LinqPad 4,看看我是否可以复制它.相反,它12:32 PM正确返回.

我勒个去?

.net c# datetime

9
推荐指数
1
解决办法
8173
查看次数

将jQuery-UI小部件与jQuery模板结合使用?

我正在使用jQueryUI和jQuery-tmpl,但我相信我正在寻找的建议足够广泛,它适用于任何类型的模板库.

我遇到的问题是我的模板中经常会有某种CRUD小部件

<script id="some-widget-template">
<div class="some-widget">
 <input name="NameField"/>
 <button id="some-widget-save">Save</button>
</div>
</script>
Run Code Online (Sandbox Code Playgroud)

这让我有一个非常易读的小部件,我可以回去编辑,等等.除了它是丑陋的.使用jQueryUI我可以使按钮非常漂亮,但它需要一些Javascript.所以在我相应的Javascript控制器中,我的代码将如下所示:

$("#some-widget-template")
        .render( arrayOfDataObjects )
        .appendTo("body");
$("#some-widget-save").button();
Run Code Online (Sandbox Code Playgroud)

对于这个非常简单的例子,这很好用.然而,我的控制器将很快变得混乱,需要转换的元素越多.它也感觉这应该是视图/模板引擎的关注点,更不用说具有降低代码可维护性的魔术字符串("#some-widget-save").

最好的方法是什么?当然,我不能成为第一个遇到这个问题的人.我一起攻击jquery-tmpl,这样在返回一个jQuery对象之前,它会扫描一个按钮元素,如果它遇到它,就把它转换成一个合适的按钮元素.这似乎很慢,因为它必须遍历模板中的每个元素.有任何想法吗?

编辑:我发现在使用CSS3时,90%的问题都被消除了.在为非CSS3兼容的浏览器构建时,我使用了工厂方法.

css jquery jquery-ui

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

在我的ASP.NET MVC站点区域中执行全局视图数据的最佳方法?

我有几个控制器,我希望每个ActionResult返回相同的viewdata.在这种情况下,我知道我将始终需要基本的产品和员工信息.

现在我一直在做这样的事情:

public ActionResult ProductBacklog(int id)  {
      PopulateGlobalData(id);
      // do some other things
      return View(StrongViewModel);
}
Run Code Online (Sandbox Code Playgroud)

其中PopulateGlobalData()定义为:

    public void PopulateGlobalData(int id) {
        ViewData["employeeName"] =  employeeRepo.Find(Thread.CurrentPrincipal.Identity.Name).First().FullName;
        ViewData["productName"] = productRepo.Find(id).First().Name;
     }
Run Code Online (Sandbox Code Playgroud)

这只是伪代码,所以原谅任何明显的错误,有没有更好的方法来做到这一点?我想让我的控制器继承一个几乎与你在这里看到的相同的类,但我没有看到任何巨大的优势.感觉就像我正在做的事情是错误的和无法维持的,最好的方法是什么?

asp.net asp.net-mvc

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

Psake和robocopy失败

Robocopy将以高于0的代码退出,但仍可能不是失败.PSake检测到0以上的任何内容为失败并且无法构建.这很好,但是为什么这仍然失败:

task Deploy {    
        robocopy $source $dest /NP /S /XO /NFL /NDL /NJH /NJS | Out-Default

    if ($lastexitcode -eq 3)
    {
       Write-Host "Got Here"
       $lastexitcode = 0       
    }

    Write-Host "Deploy local complete"
    Write-Host $lastexitcode
}

TaskTearDown {  
    if ($LastExitCode -ne 0) {
        write-host "Build failed"
        exit 1
    }
}
Run Code Online (Sandbox Code Playgroud)

我可以验证Deploy if语句是否被命中,Write-Host输出0正确,但TaskTearDown仍然检测到最后一个退出代码为3!我该如何解决?

powershell robocopy psake

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

如何在C#中订购此站点URL列表?

我有一个站点URL列表,

  • /node1
  • /node1/sub-node1
  • /node2
  • /node2/sub-node1

这个列表是以随机顺序给我的,我需要订购它,所以顶级是第一个,然后是子级别等等(因为我不能创建/node2/sub-node1没有/node2现有的).有干净的方法吗?

现在我只是做一个递归调用,说我不能创建sub-node1因为node2存在,创建node2.我希望列表的顺序决定创建并摆脱我的递归调用.

c# linq

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

为什么我的Redux减速器认为我的状态未定义?

我相信我正在复制Todo教程几行,我收到此错误:

错误:Reducer"addReport"在初始化期间返回undefined.如果传递给reducer的状态未定义,则必须显式返回初始状态.初始状态可能不是未定义的.

这是我的addReport reducer:

const addReport = (state = [], action) =>
{
  console.log(state)
  switch (action.type) {
    case ADD_NEW_REPORT:
    return [...state,
      addReports(undefined, action)
    ]
    }
}
Run Code Online (Sandbox Code Playgroud)

我添加了logging语句,可以验证它是否返回一个空数组.即使将状态设置为1也会产生相同的结果.我错过了什么?

reducers redux

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

MongoDb的C#驱动程序,是否可以将其包装在通用会话中?

如果我在这里使用错误的术语,我很抱歉.我仍然非常喜欢ORM世界,但我一直在玩MongoDb并且非常喜欢我所看到的.我不喜欢的一件事是这样的:

var books = bookRepository.GetCollection<BsonDocument>("books");
Run Code Online (Sandbox Code Playgroud)

foreach (var book in books.FindAllAs<Book>())
{
    Console.WriteLine("Author: {0}, Title: {1}", book.Author, book.Title);
}
Run Code Online (Sandbox Code Playgroud)

在会话中找到了几个关于包装NoRM的教程,但我无法弄清楚如何使用CSharp驱动程序(Mongodb推荐/在其github页面上使用的那些).

对于第一个例子,我真正想做的是这样的事情:

var bookRepository = MongoRepository<Book>(); // probably should use IoC to resolve this
Run Code Online (Sandbox Code Playgroud)

foreach (var book in books.FindAll())
Run Code Online (Sandbox Code Playgroud)

瞧!我可能不是第一个想要这个的人,到处使用字符串看起来有点疯狂,不过我会认为教程只是一个例子.是否有"最佳实践"示例以这种方式设置这一切?

编辑:如果这是疯狂的谈话而不是如何在Mongo做事,请告诉我,这是我的第一个测试项目.

c# mongodb mongodb-.net-driver

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

调试Elastic Beanstalk Docker运行失败?

我是EB和AWS的新手,我的docker图像构建正常,但无法在Elastic Beanstalk上运行.我怀疑他们没有正确连接到数据库,但是,当我从命令行运行"eb logs"时,我没有得到任何有用的东西.以下是错误:

{
  "status": "FAILURE",
  "api_version": "1.0",
  "results": [
    {
      "status": "FAILURE",
      "msg": "(TRUNCATED)...rrun.aws.json: No such file or directory
        73927c49adff622a1a229d9369bdd80674d96d20f3eb99a9cdea786f4411a368
        Docker container quit unexpectedly after launch: Docker container quit unexpectedly on Wed May 20 17:15:02 UTC 2015:.
        Check snapshot logs for details.
        Hook /opt/elasticbeanstalk/hooks/appdeploy/pre/04run.sh failed.
        For more detail, check /var/log/eb-activity.log using console or EB CLI",
      "returncode": 1,
      "events": [
        {
          "msg": "Successfully pulled node:0.12.2-slim",
          "severity": "TRACE",
          "timestamp": 1432142064
        },
        {
          "msg": "Successfully built aws_beanstalk/staging-app",
          "severity": "TRACE",
          "timestamp": 1432142094
        }, …
Run Code Online (Sandbox Code Playgroud)

docker amazon-elastic-beanstalk

6
推荐指数
2
解决办法
1153
查看次数

NHibernate 2.1.2抛出DateTime null溢出异常

我对这些问题有类似的问题:

NHibernate 2.*映射文件:如何定义可空的DateTime类型(DateTime?)?

NHibernate不会持久化DateTime SqlDateTime溢出

我正在使用NHibernate 2.1.2和FluentNhibernate 1.0.0.636.使用NHibernate 2.x DateTime?可以修复可以为空的问题,我不应该对我的映射做任何特别的事情.因此,我的所有DateTime属性都设置如下:

public virtual DateTime? CreatedOn { get; set; }
Run Code Online (Sandbox Code Playgroud)

在我的数据库(SQL2008)中,所有DateTime属性都设置为允许null.我有我的NHibernate配置文件设置使用SQL2008方言:

<property name="dialect">NHibernate.Dialect.MsSql2008Dialect</property>
Run Code Online (Sandbox Code Playgroud)

NHibernate适用于任何不包含DateTime的东西.作为参考,这是我收到的确切错误:

> at
> NHibernate.AdoNet.SqlClientSqlCommandSet.ExecuteNonQuery()</StackTrace><ExceptionString>System.Data.SqlTypes.SqlTypeException:
> SqlDateTime overflow. Must be between
> 1/1/1753 12:00:00 AM and 12/31/9999
> 11:59:59 PM.
Run Code Online (Sandbox Code Playgroud)

如果我运行SQL事件探查器,我可以看到NHibernate尝试执行的最后一个命令(这是一个非常长的语句,所以我截断了它):

exec sp_executesql N'UPDATE Projects SET Job = @p0, CreatedOn = @p1, .. WHERE (Where Clause), @p0=219221, @p1=NULL
Run Code Online (Sandbox Code Playgroud)

如果我将此语句作为查询执行,SQL会保持正常,不会抱怨!

这是怎么回事?

nhibernate fluent-nhibernate

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