问题列表 - 第46864页

如何检查IEnumerable是空还是空?

我爱string.IsNullOrEmpty方法.我很想拥有能够为IEnumerable提供相同功能的东西.有这样的吗?也许一些收集助手班?我问的原因是,在if语句中,如果模式是代码,代码看起来很混乱(mylist != null && mylist.Any()).拥有它会更加清洁Foo.IsAny(myList).

这篇文章没有给出答案:IEnumerable是空的?.

.net c# linq collections ienumerable

144
推荐指数
9
解决办法
18万
查看次数

永久性地将派生类转换为基础

Class A { }
Class B : A { }

B ItemB = new B();
A ItemA = (A)B;

Console.WriteLine(ItemA.GetType().FullName);
Run Code Online (Sandbox Code Playgroud)

是否可以执行类似上面的操作并让编译器打印出类型A而不是类型B.基本上,是否可以永久地转换对象以使其"丢失"所有派生数据?

.net c# type-conversion

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

firebug:如何cd到iframe

我有一个在iframe中运行的facebook canvas应用程序.我想在firebug中调试我的页面,但无法将javascript范围扩展到运行我的应用程序的iframe.

iframe:

<iframe frameborder="0" src="[app_url_removed]" name="iframe_canvas" id="iframe_canvas" class="canvas_iframe_util" style="height: 905px;"></iframe>
Run Code Online (Sandbox Code Playgroud)

我已经尝试了以下所有内容,但它们都不起作用:

cd(iframe_canvas)
cd(window.iframe_canvas)
cd(iframe_canvas.window)
cd($('iframe_canvas'))
Run Code Online (Sandbox Code Playgroud)

我有firefox 3.6.13,我尝试过firebug 1.7a11和firebug 1.6.2

还尝试了书签和其他各种东西,从这个链接Firebug和iFrame中的jQuery选择器无济于事.

iframe firebug facebook

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

为什么`git stash -p`有时会失败?

我♥ git stash -p.但有时,一个令人满意的会议结束后y,ns,我得到这个:

Saved working directory and index state WIP on foo: 9794c1a lorum ipsum
error: patch failed: spec/models/thing_spec.rb:65
error: spec/models/thing_spec.rb: patch does not apply
Cannot remove worktree changes
Run Code Online (Sandbox Code Playgroud)

为什么?

git git-stash

73
推荐指数
4
解决办法
5710
查看次数

为什么具有负值的枚举会导致Objective-C/C出现问题?

出于各种实现原因,我已经定义了以下枚举:

typedef enum HBSnakeMovementDirection
{
    HBSnakeMovementDirectionUp = 1,
    HBSnakeMovementDirectionDown = -1,
    HBSnakeMovementDirectionRight = 2,
    HBSnakeMovementDirectionLeft = -2
}
HBSnakeMovementDirection;
Run Code Online (Sandbox Code Playgroud)

但是,如果我尝试使用HBSnakeMovementDirectionRight,我会收到以下警告:

Implicit conversion changes signedness: 'int' to 'HBSnakeMovementDirection'

任何其他枚举值都没有问题.这有什么问题?我认为这可能与混合负面和正面枚举值有关,但我无法找到任何关于此的确定性.

(我能够提出所有积极的枚举值,让我可以解决这个问题,但它仍然困扰我,所以我想我会问它.)

我应该说,就像我的所有项目一样,我几乎发出了所有警告 - 因此,-Wconversion投诉 - 并将其视为错误.(我喜欢在编译时尽可能严格.)我正在使用LLVM 1.6.

更新1:HBSnakeMovementDirectionRight在前面的警告中逐字地使用结果:

HBSnakeMovementDirection movementDirectionRight = HBSnakeMovementDirectionRight;
Run Code Online (Sandbox Code Playgroud)

我必须施展HBSnakeMovementDirectionRight才能HBSnakeMovementDirection使警告沉默.

更新2:根据要求,这是在我的机器上发出的整个构建命令:

http://pastie.org/1580957

更新3:这是我正在GitHub上托管的确切项目:

https://github.com/LucasTizma/Hebi

具体来说,以下树:

https://github.com/LucasTizma/Hebi/tree/89262e2e53881584daf029e3dd5f1e99dfbd6f96

c enums signed objective-c llvm

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

ASP.Net MVC编辑器不工作

我想,我正在尝试使用EditorFor和partialview来渲染表格.

我有一个模型,其List <>属性定义如下:

public List<TransactionSplitLine> TransactionSplitLines { get; set; }
Run Code Online (Sandbox Code Playgroud)

这个想法是用户选择一些下拉菜单并在编辑框中输入一个值,然后单击一个按钮.模型返回到控制器,控制器将输入的值添加到List <>

[HttpPost]
public ActionResult AccountTransaction(AccountTransactionView model)
{
    var reply = CreateModel(model);
    if (model.CategoryIds != null)
    {
        foreach (var c in model.CategoryIds)
        {
            reply.TransactionSplitLines.Add(new TransactionSplitLine { Amount = "100", Category = "Test Category", SubCategory = "Test More", CategoryId = int.Parse(c) });
        }
    }
    reply.TransactionSplitLines.Add(new TransactionSplitLine { Amount = "100", Category = "Test Category", SubCategory = "Test More", CategoryId = 1 });
    return View("AccountTransaction", reply);
}
Run Code Online (Sandbox Code Playgroud)

忽略CreateModel.它只是设置了一些数据.另外,我正在硬编码数据.这最终将来自某些形式值.

然后将模型返回到同一屏幕,允许用户收集更多数据.读取List <>中的任何项目并呈现表格.我还必须将当前监听项目值存储在隐藏字段中,以便可以将它们与输入的新数据一起提交回来,以便每次用户添加数据时列表都可以增长.

视图定义如下:

<table …
Run Code Online (Sandbox Code Playgroud)

asp.net asp.net-mvc

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

我应该何时在另一个线程(而不是主线程)上执行某些SQLite操作?

我的Android应用程序包含一个SQLite数据库,其中包含一个SQLiteOpenHelper可帮助管理它的类.在应用程序使用期间,用户可以在数据库上执行一些操作,例如添加/删除/更新等.

在某些点上,操作的大小将是已知的,如下所示:

  1. 用户单击按钮以保存项目
  2. SQLiteDatabase执行单个insert查询
  3. 用户继续使用app

在应用程序的其他区域,操作可能很大,例如一次将10多个项目插入数据库.

问题:

  • 我应该插入简单的操作,如插入/更新/删除/查看1项?
  • 是否需要更长时间才能将1个项目插入包含许多项目(如30+)的表格中,而不是插入没有项目的表格所需的项目?
  • 如果我不需要编写这样简单的操作,你在什么时候建议我开始线程化?

当我说线程我的意思是使用一个不是主UI线程的线程.

编辑:我意识到小操作不需要花费太多时间,我可以很好地在主线程上完成它们.我只是担心在主线程上执行它们并且想要澄清是不好的做法!

sqlite android

42
推荐指数
2
解决办法
9774
查看次数

在循环属性时无法评估IList的类型

我有一个属性的类.我们将调用此TestMeCommand(见下文).这个类有一个列表.我需要做的是遍历类的属性,并识别List.现在必须一般地构建它,因为它的验证代码,所以这个相同的代码可能需要识别a List<int>或a List<string>或其他东西.

public class TestMeCommand
{
    [Range(1, Int32.MaxValue)]
    public int TheInt { get; set; }

    [Required]
    [StringLength(50)]
    public string TheString { get; set; }

    [ListNotEmptyValidator]
    public List<TestListItem> MyList { get; set; }

    public class TestListItem
    {
        [Range(1, Int32.MaxValue)]
        public int ListInt { get; set; }
    }
}
Run Code Online (Sandbox Code Playgroud)

现在问题是我的代码看起来像这样:

foreach (var prop in this.GetType().GetProperties())
{
    if (prop.PropertyType.FullName.StartsWith("System.Collections.Generic.List"))
    {
        IList list = prop.GetGetMethod().Invoke(this, null) as IList;
    }
}
Run Code Online (Sandbox Code Playgroud)

我不想把那个字符串放在那里,但如果我做prop.PropertyType之类的东西是IList它永远不会评估为true.我如何解决它?

c# reflection properties

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

iPhone - UITableViewCell高度变化的平滑动画,包括内容更新

可能重复:
您可以选择UITableViewCell上的高度更改动画吗?

我有一个表格视图,您可以在其中单击swich进入单元格,表格视图的许多单元格可能会更改其高度.计算哪些单元格会改变它们的大小有点复杂,所以我不想调用两次相同的代码.

我有一个heightForRowAtIndexPath方法(这是一个复杂的方法).

有没有办法让细胞生长或减少特征的动画而不会影响不改变的特征?

我已经尝试过UIViewAnimations,reloadData用于带动画的部分,但是我没有找到任何平滑的东西.我试图抓住每个必须更改的单元格,并在每个单元格上调用带动画的reloadData.它接近工作,但细胞一个接一个地更新.正如我之前所说,我不想这样做,因为我必须调用两次heightForRowAtIndexPath方法.

我想要的是能够使每个细胞变得生动的东西,这些细胞具有变化的高度,像生长或减少运动,而不是褪色.

你知道这样做的方法吗?还有一件事,当尺寸变化时(一些文字添加,背面颜色变化,以及类似的东西),单元格的内容会发生一些变化

iphone animation resize uitableview

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

快速获得hibernate结果的方法?

我目前在我的项目中设置了hibernate.它适用于大多数事情.但是今天我需要从表中返回几十万行查询.它是表中总行数的约2/3s.问题是查询需要大约7分钟.使用直接JDBC并执行我假设的相同查询,它需要<20秒.因此,我认为我做的事情完全错了.我将在下面列出一些代码.

DetachedCriteria criteria  =DetachedCriteria.forlass(MyObject.class);
criteria.add(Restrictions.eq("booleanFlag", false));
List<MyObject> list = getHibernateTemplate().findByCriteria(criteria);
Run Code Online (Sandbox Code Playgroud)

关于它为什么会变慢和/或我可以做些什么来改变它的想法?

java oracle hibernate

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