我正在寻找一种方法,从具有相同列数的两行数据中导出加权平均值,其中平均值如下(借用Excel表示法):
(A1*B1)+(A2*B2)+...+(An*Bn)/SUM(A1:An)
Run Code Online (Sandbox Code Playgroud)
第一部分反映了与Excel的SUMPRODUCT()函数相同的功能.
我的问题是,我需要动态指定哪个行使用权重进行平均,以及权重来自哪一行,以及日期范围.
编辑:这比我想象的要容易,因为Excel让我觉得我需要某种支点.到目前为止我的解决方案是:
select sum(baseSeries.Actual * weightSeries.Actual) / sum(weightSeries.Actual)
from (
select RecordDate , Actual
from CalcProductionRecords
where KPI = 'Weighty'
) baseSeries inner join (
select RecordDate , Actual
from CalcProductionRecords
where KPI = 'Tons Milled'
) weightSeries on baseSeries.RecordDate = weightSeries.RecordDate
Run Code Online (Sandbox Code Playgroud) 我需要使用Open XML SDK 2.0从Excel 2007工作簿中的单个工作表中读取数据.我花了很多时间来搜索这样做的基本指导,但我只是在创建电子表格方面找到了帮助.
如何使用此SDK迭代工作表中的行,然后迭代每行中的单元格?
为什么我需要使用 <text>标记来封装管道文字'|' 在这个标记?当然,它远远超出了ActionLink方法的范围.
@foreach (var item in Model.DetailItem.PlannedResources)
{
<tr>
<td>
@if (Model.ViewMode == ViewMode.Edit)
{
@Html.ActionLink("Edit", "Edit", new { id = item.PlannedResourceId }) <text>|</text>
@Html.ActionLink("Delete", "Delete", new {id = item.PlannedResourceId})
}
@Html.ActionLink("Details", "Details", new { id = item.PlannedResourceId })
</td>
<td>
| @item.ResourceType.Name
</td>
</tr>
}
Run Code Online (Sandbox Code Playgroud)
如果我不使用它,我得到错误CS1525: Invalid expression term '|',但第二个'|' 无阻碍地得到.
我正在尝试在我的UI上设置日期范围过滤器,并带有复选框,说明是否应该使用DateTimePicker的值,例如
Dim fromDate As DateTime? = If(fromDatePicker.Checked, fromDatePicker.Value, Nothing)
Run Code Online (Sandbox Code Playgroud)
然而设置fromDate为Nothing不会导致设置为Nothing'12:00:00 AM',并且以下If语句错误地执行过滤器,因为startDate不是Nothing.
If (Not startDate Is Nothing) Then
list = list.Where(Function(i) i.InvDate.Value >= startDate.Value)
End If
Run Code Online (Sandbox Code Playgroud)
我如何真正确保startDate获得价值Nothing?
我在视图中有以下标记.当我WindowContainer.Width在视图的启动代码中获取时,它返回NaN.
<Border BorderThickness="10">
<StackPanel x:Name="Panel" Orientation="Vertical" >
<Grid x:Name="WindowContainer" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Loaded="WindowContainer_OnLoaded">
<delphi:Win32WindowHost x:Name="Host" />
</Grid>
<TextBlock x:Name="InfoTextBlock" HorizontalAlignment="Right" />
</StackPanel>
</Border>
Run Code Online (Sandbox Code Playgroud)
是否Stretch使网格伸展以容纳其所有内容,或填充其容器?我希望它伸展以填充容器,Border并且具有适当的double宽度,我可以使用它来调整浮动窗口的大小.
today1 = new Date();
today2 = Date.parse("2008-28-10");
Run Code Online (Sandbox Code Playgroud)
要比较这些的时间(毫秒)值,我必须执行以下操作,因为today2只是一个数字.
if (today1.getTime() == today2)
Run Code Online (Sandbox Code Playgroud)
为什么是这样?
我有以下遗留代码,我想模仿,一列内的所有动作链接.但是,我似乎无法正确使用Razor语法.我应该如何在剃刀中表达这一点?
ASPX列模板是这样的:
.Columns(column =>
{
column.Template(o =>
{%>
<%= Html.ActionLink("Edit", "Edit", new{ id = o.DeviceID}) %> |
<%= Html.ActionLink("Delete", "Delete", new { id = o.DeviceID })%>
<%});
Run Code Online (Sandbox Code Playgroud)
我只能使用Razor获得三个单独的列而不会抱怨语法等,如下所示:
.Columns(columns =>
{
columns.Template(o => @Html.ActionLink("Edit", "Edit", new { id = o.ProductId })).Width(50);
columns.Template(o => @Html.ActionLink("Details", "Details", new { id = o.ProductId })).Width(50);
columns.Template(o => @Html.ActionLink("Delete", "Delete", new { id = o.ProductId })).Width(50);
Run Code Online (Sandbox Code Playgroud)
如何使用Razor语法定义包含所有三个操作链接的一个模板列?
编辑: 在下面尝试以下对Mike的答案的小改编,我得到错误"只有赋值,调用,递增,递减和新对象表达式可以用作语句":
columns.Template(o => @<text>@Html.ActionLink("Edit", "Edit", new { id = o.CampaignId }) |
@Html.ActionLink("Delete", "Delete", new { id …Run Code Online (Sandbox Code Playgroud) 我正在调试一个大型Web应用程序解决方案,主Web应用程序项目作为单个启动项目,配置为使用IIS进行调试.每当我在Visual Studio 2010中运行此应用程序时,我仍然会启动ASP.NET Development Server的多个实例(有时超过15个).为什么会这样?
我可以使用哪些体系结构和模式来共享WPF和ASP.NET MVC应用程序之间的大多数模型和逻辑代码?
我试图在这里实现更多,而不仅仅是将我的数据实体与两个演示项目分开.还有很多共同之处,例如关于在什么条件下显示什么的UI逻辑,何时需要什么,等等,我想保留在共享代码中.
补充:我刚刚开始真正喜欢独立于我的实体模型驱动我的演示的视图模型的概念.虽然这些中使用的一些注释位于特定于MVC的程序集中,但所提供的元数据实际上都不是特定于Web的.我非常想探索使用我的MVC视图模型作为绑定到WPF视图的数据源.对此方面的任何建议都将非常感激.
我有以下代码来打印弹出窗口的内容:
var frame = this._urlElement;
if (frame) {
var content = frame.contentWindow.document.getElementById("content");
if (content) {
MarvalSoftware.UI.Dom.setStyles(content, { 'overflow': 'visible' });
}
frame.contentWindow.focus();
frame.contentWindow.print();
}
Run Code Online (Sandbox Code Playgroud)
_urlElementiframe 在哪里,其内容是doc overflow: auto.当我在IE11中打印到PDF时,我只看到第一页,内容没有干净地切断,打印的PDF上也没有可见的滚动条.如果我尝试打印预览,甚至在iframe内部,我会看到整个页面都有弹出窗口的轮廓.
我试图从Iframe打印的页面有一个母版页,带有contentdiv overflow: auto.当我这样打印,Chrome和IE时,我在打印输出上看到一个滚动条,打印输出只有一页,因此在我的页面样式表中,我用一个用于打印的媒体查询覆盖该溢出规则overflow: visible.然后,当我在Chrome上打印时,滚动条消失,打印输出为两页.在IE中,滚动条也消失了,但在打印页面1的末尾,打印输出被毫不客气地切断.
当我修改我的打印代码以创建新的IFrame,并将其插入要打印的文档时,将样式表和正文复制到新的iframe,并打印新的iframe,然后即使在IE上,也会打印完整的文档.也就是说,新的iframe不包含在母版页的任何元素中,因此,我可以查找的母版页中是否有任何其他样式可能会导致这种情况,除此之外overflow?
顺便说一下,当我使用Windows自己的"PDF打印机"打印到PDF时,我似乎只会遇到这种情况.
asp.net-mvc ×3
javascript ×2
razor ×2
wpf ×2
.net ×1
asp.net ×1
c# ×1
css ×1
excel ×1
html ×1
iframe ×1
openxml ×1
sql ×1
sql-server ×1
statistics ×1
t-sql ×1
telerik ×1
telerik-mvc ×1
vb.net ×1
vb.net-2010 ×1
wpf-4.0 ×1
wpf-controls ×1