我爱string.IsNullOrEmpty方法.我很想拥有能够为IEnumerable提供相同功能的东西.有这样的吗?也许一些收集助手班?我问的原因是,在if语句中,如果模式是代码,代码看起来很混乱(mylist != null && mylist.Any()).拥有它会更加清洁Foo.IsAny(myList).
这篇文章没有给出答案:IEnumerable是空的?.
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.基本上,是否可以永久地转换对象以使其"丢失"所有派生数据?
我有一个在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选择器无济于事.
我♥ git stash -p.但有时,一个令人满意的会议结束后y,n和s,我得到这个:
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)
为什么?
出于各种实现原因,我已经定义了以下枚举:
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:根据要求,这是在我的机器上发出的整个构建命令:
更新3:这是我正在GitHub上托管的确切项目:
https://github.com/LucasTizma/Hebi
具体来说,以下树:
https://github.com/LucasTizma/Hebi/tree/89262e2e53881584daf029e3dd5f1e99dfbd6f96
我想,我正在尝试使用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) 我的Android应用程序包含一个SQLite数据库,其中包含一个SQLiteOpenHelper可帮助管理它的类.在应用程序使用期间,用户可以在数据库上执行一些操作,例如添加/删除/更新等.
在某些点上,操作的大小将是已知的,如下所示:
SQLiteDatabase执行单个insert查询在应用程序的其他区域,操作可能很大,例如一次将10多个项目插入数据库.
问题:
当我说线程我的意思是使用一个不是主UI线程的线程.
编辑:我意识到小操作不需要花费太多时间,我可以很好地在主线程上完成它们.我只是担心在主线程上执行它们并且想要澄清是不好的做法!
我有一个属性的类.我们将调用此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.我如何解决它?
我有一个表格视图,您可以在其中单击swich进入单元格,表格视图的许多单元格可能会更改其高度.计算哪些单元格会改变它们的大小有点复杂,所以我不想调用两次相同的代码.
我有一个heightForRowAtIndexPath方法(这是一个复杂的方法).
有没有办法让细胞生长或减少特征的动画而不会影响不改变的特征?
我已经尝试过UIViewAnimations,reloadData用于带动画的部分,但是我没有找到任何平滑的东西.我试图抓住每个必须更改的单元格,并在每个单元格上调用带动画的reloadData.它接近工作,但细胞一个接一个地更新.正如我之前所说,我不想这样做,因为我必须调用两次heightForRowAtIndexPath方法.
我想要的是能够使每个细胞变得生动的东西,这些细胞具有变化的高度,像生长或减少运动,而不是褪色.
你知道这样做的方法吗?还有一件事,当尺寸变化时(一些文字添加,背面颜色变化,以及类似的东西),单元格的内容会发生一些变化
我目前在我的项目中设置了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)
关于它为什么会变慢和/或我可以做些什么来改变它的想法?
c# ×3
.net ×2
android ×1
animation ×1
asp.net ×1
asp.net-mvc ×1
c ×1
collections ×1
enums ×1
facebook ×1
firebug ×1
git ×1
git-stash ×1
hibernate ×1
ienumerable ×1
iframe ×1
iphone ×1
java ×1
linq ×1
llvm ×1
objective-c ×1
oracle ×1
properties ×1
reflection ×1
resize ×1
signed ×1
sqlite ×1
uitableview ×1