我希望用这样的javascript将数字舍入为数百:
10651.89 = 10700
10649.89 = 10600
60355.03 = 60400
951479.29 = 951500
1331360.95 = 1331400
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点 ?
非常感谢.
我正在研究包含以下项目的WPF MVVM项目,
例如我需要IFileService提供一些带文件的操作并且不包含任何业务逻辑,我确信这个接口FileService的实现将在Infrastructure项目中,但我有问题放在哪里IFileService接口
我需要在ViewModels项目中使用这个接口,如果我将它放在这个项目中,它意味着基础设施将在ViewModels上引用我认为不好的,如果我将它放在包含业务相关类的域中.
帮助我组织项目之间的结构和引用以及放置接口的最佳位置是IFileService什么?
我目前正在使用EntityFramework 6.0在C#4.0中创建一个应用程序.
我正在尝试从数据库中检索项目列表,但问题是EF框架生成的SQL查询不包含where子句.
因此,整个表/视图加载到内存中,只需10秒即可获得2或3个项目.
下面是我的GenericRepostitory中的方法:
public IList<TEntity> GetList(Func<TEntity, bool> where, params Expression<Func<TEntity, object>>[] navigationProperties)
{
using (var dbContextScope = contextScopeFactory.CreateReadOnly())
{
IQueryable<TEntity> dbQuery = Context.Set<TEntity>().AsQueryable();
foreach (Expression<Func<TEntity, object>> navigationProperty in navigationProperties)
dbQuery = dbQuery.Include<TEntity, object>(navigationProperty);
var list = dbQuery
.AsNoTracking()
.Where(where);
Context.Database.Log = s => Debug.WriteLine(s);
return list.ToList<TEntity>();
}
}
Run Code Online (Sandbox Code Playgroud)
我称之为:
var repository = repositoryFactory.Get<Context, Entity>();
var items = repository.GetList(x => x.FakeID <= 10);
Run Code Online (Sandbox Code Playgroud)
返回结果很好,但需要大约10秒才能检索到.当调试写入生成的SQL查询时,where子句无处可去
如何修改我的函数GetList以包含where子句?
我希望我对这些信息足够清楚,我很抱歉我的英语.这不是我的母语:/
无论如何,谢谢你的帮助
我的多维数据集中的相关结构是我有一个带有"Class"和"SubClass"的层次结构.我还有一个称为"价值"的措施,这是我试图获得的.
一个简单的查询可能如下所示:
SELECT
NON EMPTY ([Measures].[Value]) ON COLUMNS,
NON EMPTY ([Some Dimension].[Class Hierarchy].[Class]) ON ROWS
FROM [MyCube]
Run Code Online (Sandbox Code Playgroud)
我显然可以使用返回给Adomd的HIerarchy读取SubClass.
我的问题是双重的,首先我将如何"扁平化"这个层次结构,以便在CellSet中接收Class和SubClass作为离散成员?这不起作用:
SELECT
NON EMPTY ([Measures].[Value]) ON COLUMNS,
NON EMPTY (
[Some Dimension].[Class Hierarchy].[Class],
[Some Dimension].[Class Hierarchy].[Sub Class]
) ON ROWS
FROM [MyCube]
Run Code Online (Sandbox Code Playgroud)
Class Hierarchy层次结构在Crossjoin函数中多次使用
第二个问题,我真正需要做的是在特定类上过滤上述内容,再次由于与上述相同的原因不能工作.
SELECT
NON EMPTY ([Measures].[Value]) ON COLUMNS,
NON EMPTY (
{[Some Dimension].[Class Hierarchy].[Class].&[ClassA],[Some Dimension].[Class Hierarchy].[Class].&[ClassB]},
[Some Dimension].[Class Hierarchy].[Sub Class]
) ON ROWS
FROM [MyCube]
Run Code Online (Sandbox Code Playgroud)
任何帮助非常感谢.MDX让我疯了!
我在WiX安装程序中有一个ServiceInstall组件,我要求根据传入MSI的参数启动auto或demand.
所以问题的Xml元素是
<ServiceInstall Vital="yes"
Name="My Windows Service"
Type="ownProcess"
Account="[SERVICEUSERDOMAIN]\[SERVICEUSERNAME]"
DisplayName="My Service"
Password="[SERVICEUSERPASSWORD]"
Start="demand"
Interactive="no"
Description="Something interesting here"
Id="Service"
ErrorControl="ignore"></ServiceInstall>
Run Code Online (Sandbox Code Playgroud)
WiX将不允许使用参数作为Start属性,因此我坚持完全使用条件来补充组件,例如/
<Component Id="ServiceDemand"
Guid="{E204A71D-B0EB-4af0-96DB-9823605050C7}" >
<Condition>SERVICESTART="demand"</Condition>
...
Run Code Online (Sandbox Code Playgroud)
并完全复制整个组件,具有不同的Start设置和不同的Condition.
谁知道更优雅的解决方案?一个我不知道的地方;除了开始的属性之外,我必须保持两个完全相同的组件吗?
正如标题所描述的那样,我有一组对象 - 称为Allocations - 包含描述和数字.集合中的所有数字加起来都是100%,但出于显示目的,我有时会达到整数百分比.在某些边缘情况下,对数字进行舍入后,最终得出99%.
例:
Description | Actual | Rounded
===============================
Allocation A | 65.23% | 65%
Allocation B | 25.40% | 25%
Allocation C | 7.95% | 8%
Allocation D | 1.42% | 1%
===============================
Total | 100% | 99% (Bad!)
Run Code Online (Sandbox Code Playgroud)
所要求的解决方案虽然不完善但会做到,但要找到最高的解决方案,然后将其四舍五入.在上面的示例中,四舍五入时1.42%将变为2%.编辑:通过"最高的一个向下舍入"我的意思是最圆的一个.因此1.42%下调0.42而65.23仅下跌0.23
所以现在代码,我有一个类
public class Allocation
{
public string Description {get;set;}
public doubel Percentage {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
这些都是在一个IEnumerable<Allocation>.因此,可能使用LINQ,我如何确定哪一个是圆形的.或者更具体地说,如何生成IEnumerable<Allocation>带有舍入数字的新数据.
如果有人有任何其他建议,总是将圆整百分比总是等于100%甚至会更好!
在这里,我有一个我的班级Assinantes的名单
new Assinante
{
City= "BAURU",
Num= 112,
ClientCode= 3123,
Phone= "1412345675"
},
new Assinante
{
City= "BAURU",
Num= 45,
ClientCode= 3123,
Phone= "214464347"
}
Run Code Online (Sandbox Code Playgroud)
我需要按城市,ClientCod和Num进行分组,我已经在这里完成了:
var listGroup= (from a in lista
group a by new {a.City, a.ClientCode, a.Num});
Run Code Online (Sandbox Code Playgroud)
然后,我需要使用Linq生成一个html字符串,如下例所示:
<div>
<h2>Bauru</h2>
<ul>
<li>3123</li>
<ul>
<li>112</li>
<ul>
<li>1412345675</li>
</ul>
<li>45</li>
<ul>
<li>214464347</li>
</ul>
</ul>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
有人可以给我任何消化吗?
我正在学习JavaScript,我遇到了这个片段,它演示了类型检测:
var toClass = {}.toString // Copy a reference to toString for objects into toClass variable
alert( toClass.call( [1,2] ) ) // [object Array]
alert( toClass.call( new Date ) ) // [object Date]
Run Code Online (Sandbox Code Playgroud)
我不明白第一行中的空花括号是什么,所以我将它们删除如下:
var toClass = toString
Run Code Online (Sandbox Code Playgroud)
代码仍然有效.但是在下面的代码中,
function getAge () {
alert(this.age);
}
var p1 = {
age:1
};
var tellAge=getAge;
tellAge.call(p1); //1
Run Code Online (Sandbox Code Playgroud)
如果我var tellAge=getAge改为var tellAge={}.getAge,我得到一个错误:无法读取未定义的属性"调用".为什么是这样?是因为toString是内置功能吗?
我试图在每个部分获得随机渐变背景(4 种颜色之间)。这是我的代码:
let colors = ["#ffd0d2","#fffdd0","#d0fffd","#d0d2ff"];
$(".main").children('section').each(function(){
let firstGradient = randomNumber(10,90);
$(this).css(
"background", "linear-gradient(141deg, "+colors[randomNumber(0,4)]+" "+firstGradient+"%, "+colors[randomNumber(0,4)]+" "+(100-firstGradient)+"%)"
);
});
function randomNumber(min,max){
return Math.floor((Math.random() * max) + min);
}Run Code Online (Sandbox Code Playgroud)
section{
display:block;
height:400px;
}Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="main">
<section></section>
<section></section>
<section></section>
</div>Run Code Online (Sandbox Code Playgroud)
当结果应该是这样的:
我正在使用一个复杂的外部库,我试图在一大堆项目上执行它的功能.该库没有公开一个好的异步接口,所以我坚持使用一些非常老式的代码.
我的目标是优化完成一批处理所需的时间,并演示问题而不必包含我在下面创建的实际第三方库的近似问题
给定非异步操作,您可以提前知道操作的"大小"(即复杂性):
public interface IAction
{
int Size { get; }
void Execute();
}
Run Code Online (Sandbox Code Playgroud)
鉴于此动作有3种变体:
public class LongAction : IAction
{
public int Size => 10000;
public void Execute()
{
Thread.Sleep(10000);
}
}
public class MediumAction : IAction
{
public int Size => 1000;
public void Execute()
{
Thread.Sleep(1000);
}
}
public class ShortAction : IAction
{
public int Size => 100;
public void Execute()
{
Thread.Sleep(100);
}
}
Run Code Online (Sandbox Code Playgroud)
您如何优化这些操作的长列表,以便在以某种并行方式运行时,整个批处理尽可能快地完成?
天真的,你可以把整个批次扔到一个Parallel.ForEach,并且具有相当高的并行性并且肯定有效 - 但是必须有一种方法来优化它们,所以一些最大的首先开始.
为了进一步说明问题,如果我们采取一个超简化的例子
c# ×4
javascript ×3
.net ×2
linq ×2
adomd.net ×1
architecture ×1
c#-3.0 ×1
css ×1
function ×1
ienumerable ×1
mdx ×1
mvvm ×1
rounding ×1
sql-server ×1
tostring ×1
wix ×1
wpf ×1