如果我有以下数据:
sale_id sale_date
1 1/5/2010
2 1/8/2010
3 1/16/2010
4 1/28/2010
5 2/2/2010
6 2/21/2010
7 2/29/2010
8 3/3/2010
Run Code Online (Sandbox Code Playgroud)
我想要每个月的第一个和最后一个(每月2个或更少的记录):
期望的输出:
sale_id sale_date
1 1/5/2010
4 1/28/2010
5 2/2/2010
7 2/29/2010
8 3/3/2010
Run Code Online (Sandbox Code Playgroud)
我认为缓慢的一种方法是:
select * from table o
where sale_date in (select max(sale_date) from table where datepart(month+year of sale_date) = datepart(month+year of o.sale_date), select min(sale_date) from table where ... )
Run Code Online (Sandbox Code Playgroud) 我在WCF中使用EF 4.我在db端有一个SP(执行动态sql),它可以返回n个不确定的n列.因此,当我执行函数import并声明返回类型为none时,它将返回类型设置为int.我没有看到任何其他选择.我可以返回xml并执行此操作,但我不想处理xml.我只想让它的返回类型为List <object>
我从sql profiler复制了linq构建的sql查询,这里有什么令人讨厌的事情:
它前缀select ..columnNames ..来自(select ..columnNames .. from(从视图中选择cNames)注释:这里的2个select语句是不必要的.
此查询需要14秒才能执行
当我删除最后一行,包含所有参数,如@p_ linq _0 ..并在where条件中填充参数值并执行相同的动态查询时需要1秒或更短时间.即使从sql studio执行此查询也需要0秒.这是linq的蹩脚.
我可能会把它移到存储过程但我现在害怕使用linq
经过进一步的研究,我发现:
查询1:
exec sp_executesql N'SELECT * from TableView WHERE Id = @Id', N'@Id int', @Id = 1
Run Code Online (Sandbox Code Playgroud)
查询2:
exec sp_executesql N'SELECT * from TableView WHERE Id = 1'
Run Code Online (Sandbox Code Playgroud)
查询1需要12秒,查询2需要0秒.这解释了为什么linq查询很慢.所以现在,这是否意味着我应该总是使用存储过程或者我错过了什么?
为什么Microsoft无法修复Linq查询构建,解析该字符串并替换param值而不是将这些params作为参数传递给sp_executesql是多么困难
我如何通过命令参数 MenuItem
<MenuItem CommandParameter="{Binding this, ElementName=Header}" />
Run Code Online (Sandbox Code Playgroud)
或者如何传递硬编码的字符串
<MenuItem CommandParameter="something" />
Run Code Online (Sandbox Code Playgroud)
我正在使用mvvm light,wpf
有两种情况:
您选择一行并按删除键删除行.
您选择一个单元格,当其文本突出显示时,按删除键删除文本.
我如何区分这两者?在这两种情况下我都会捕获PreviewKeyPress并且Key是Delete Key,所选行是相同的.
在以下代码中:
http://msdn.microsoft.com/en-us/library/ms754027.aspx
如何将IsExpanded绑定到MyData对象列表,其中每个对象都具有IsExpanded属性?
<Expander IsExpanded={Binding Path=IsExpanded, Mode=TwoWay} />
Run Code Online (Sandbox Code Playgroud)
这不起作用!
MyData is List<GroupNode>;
Run Code Online (Sandbox Code Playgroud)
GroupNode是一个包含通知属性已更改属性IsExpanded的类.
因此,如果我手动打开其中一个扩展器,它应该将IsExpanded属性设置为该MyData的GroupNode的true.
我一直试图弄清楚使用SSRS 2012和PowerView与使用SSRS 2008是否合理.
我有以下问题:
我会将一个字符串属性绑定到text属性,如下所示:Text="{Binding propertyName}.
我也想在这个附加一个硬编码的字符串Text="{Binding propertyName} appendedName.这该怎么做?
每当我们在setter中调用PropertyChanged时MVVM Light中没有简写,就像在flex [Bindable]中一样:
[PropertyChanged]
public bool IsEditable { .... }
Run Code Online (Sandbox Code Playgroud)
为什么我们每次都要写PropertyChanged("IsEditable"),它容易出错,哪些可以默认.
.net ×5
mvvm ×4
wpf ×4
c# ×2
ado.net ×1
light ×1
linq ×1
mvvm-light ×1
powerview ×1
sharepoint ×1
silverlight ×1
sql ×1
sql-server ×1
ssrs-2008 ×1
wcf ×1
xaml ×1