我有一个仪表板Web应用程序.它包含一些控件,它们根据浏览器调整大小,并且也可以由用户调整大小.它们是动态创建的,因此,我通过在Session和数据库中存储它们的状态来保持页面回发的维度.
当我的仪表板首次加载时,我有可能将数据从数据库中拉出到监视器上,该监视器与将数据写入数据库时的大小不同.控件需要根据之前的比例调整大小.幸运的是,如果控件认为需要重新计算尺寸,控件就能够将自己调整到正确的比例尺寸.
因此,在第一页加载时,我想模拟浏览器调整大小.是否可以在javascript中执行此类操作?
我在Visual Studio 2010下有一个Web应用程序解决方案.此解决方案的一部分是负责生成.msi安装程序的WiX项目.
我正在阅读WiX教程,试图学习如何在遇到以下内容时自动收集文件:
作为WiX中的工具,Heat用于从各种来源(文件夹,文件,DLL,ActiveX控件,性能计数器,网站)收集数据,其中条目数可能太大而无法手动编写相应的WiX源文件.它的主要目的是运行一次,以收集稍后在源文件的常规维护中使用的数据,而不是一次又一次地在一组不断变化的输入数据上运行的构建环境.如果您仍然希望以第二种方式使用它,则必须非常小心以确保输入中的更改不会引入不受欢迎的效果(主要是破坏组件规则).Heat确实具有帮助您实现这一目标的功能,但在使用时要小心.
好像我不想使用它的主要功能,但是教程只是用我的想法来解释如何做我想要完成的事情.
尝试自动维护WiX安装所安装的文件真的是一个糟糕的主意吗?我厌倦了破碎的构建,其中某人已经编写了一个新文件,但忘记了通过引用该新文件来更新WiX安装程序.
其他人如何处理这种情况?
谢谢.
Re:teasing - 该教程指出'Heat确实具有帮助您实现此目标的功能',但我无法找到所引用的功能.收获项目后 - 下一步是什么?热量是否负责创建我最终将使用的.wxs文件 - 或者我应该只是使用这个文件列表并在事后建立一个功能更强大的.wxs文件?
http://jsperf.com/testing-foreach-vs-for-loop
我的理解是,测试案例2的运行速度应该比测试案例1慢 - 我想看看速度有多慢.当我看到它运行得更快时,想象一下我的惊喜!
这里发生了什么?在幕后优化?或者.forEach更清洁,更快?
在Windows Server 2008 R2/7 64位上以32位Chrome 1.5.0.1025.142进行测试
我正在与Jon Skeet先前的讨论建立起来.
我的方案的要点如下:
此时,我理解使用客户端生成的UUID作为数据库中对象的PK是不好的做法.原因是恶意用户可以修改生成的UUID并强制我的数据库上的PK冲突.
为了减轻因在PlaylistItem上强制PK冲突而导致的任何损害,我选择将PK定义为两个ID的组合 - 客户端生成的UUID和服务器生成的GUID.服务器生成的GUID是PlaylistItem的播放列表ID.
现在,我一直在使用这个解决方案,但我不明白为什么/相信我的解决方案比简单地信任客户端ID更好.如果用户能够强制PK collison与另一个用户的PlaylistItem对象,那么我认为我应该假设他们也可以提供该用户的PlaylistId.他们仍然可以强制使用collisons.
是的.做这样的事情的正确方法是什么?允许客户端创建UUID,服务器在成功保存后会竖起大拇指.如果发现冲突,请恢复客户端更改并通知检测到的collison?
// Repaints the progress bar's filled-in amount based on the % of time elapsed for current video.
progressBar.change(function () {
var currentTime = $(this).val();
var totalTime = parseInt($(this).prop('max'), 10);
// Don't divide by 0.
var fill = totalTime !== 0 ? currentTime / totalTime : 0;
// EDIT: Added this check, testing with it now.
if (fill < 0 || fill > 1) throw "Wow this really should not have been " + fill;
var backgroundImage = '-webkit-gradient(linear,left top, right …Run Code Online (Sandbox Code Playgroud) 我正在尝试将POST请求发送到我的服务器的其他一些数据.最初,我只发送了几种形式的信息:
$.ajax({
url: 'SaveAllDetails',
type: 'POST',
data: $('form').serialize(),
dataType: 'json'
});
Run Code Online (Sandbox Code Playgroud)
和MVC控制器方法:
[HttpPost]
public ActionResult SaveAllDetails([Bind(Prefix = "order")]ExistingOrderDetailsModel existingOrderDetailsModel,
[Bind(Prefix = "task")]ExistingTaskDetailsModel existingTaskDetailsModel, [Bind(Prefix = "device")]DeviceDetailsModel deviceDetailsModel)
{
....
}
Run Code Online (Sandbox Code Playgroud)
这非常有效.MVC的模型绑定器能够正确地反序列化URL编码的字符串.
现在,要求已经改变.我需要发送一个额外的数据数组以及我的三个表单.此数据数组不保存在表单中,并且没有绑定前缀.我需要在同一个Controller方法中完成所有操作,因为所有验证都需要在单个事务中执行.
所以,我现在有:
var subcomponentsGridRows = JSON.stringify(subcomponentsDetailsView.getAllGridData());
var existingOrderDetailsFormData = $('form#existingOrderDetailsForm').serialize();
var existingTaskDetailsFormData = $('form#existingTaskDetailsForm').serialize();
var deviceDetailsFormData = $('form#existingDeviceDetailsForm').serialize()
$.ajax({
url: 'SaveAllDetails',
type: 'POST',
data: {
existingOrderDetailsModel: existingOrderDetailsFormData,
existingTaskDetailsModel: existingTaskDetailsFormData,
deviceDetailsModel: deviceDetailsFormData,
subcomponentsGridRows: subcomponentsGridRows
},
dataType: 'json'
});
Run Code Online (Sandbox Code Playgroud)
这至少有一个原因不起作用.每个表单都表示为URL编码的字符串.subcomponentsGridRows是一个JSON结构.据我所知,MVC模型绑定器无法一次性解密这两种类型的信息.
解决这个问题的好方法是什么?
我编写了一个与MSSQL数据库交互的服务器.它目前用.NET 4.0编写,并使用NHibernate作为ORM从数据库中检索信息.在阅读有关.NET 4.5和async/await关键字的介绍时,我了解到,遗憾的是,NHibernate不支持async/await.
我不明白为什么向数据库发出异步调用会有所帮助.不是所有请求都在数据库级别排队吗?不同步只是增加失败点而不改进任何东西?
我正在尝试在Active Directory中按用户名查找用户.
这有效:
const string Domain = "SLO1.Foo.Bar.biz";
const string Username = "sanderso";
PrincipalContext principalContext = new PrincipalContext(ContextType.Domain, Domain);
UserPrincipal userPrincipal = UserPrincipal.FindByIdentity(principalContext, Username);
Run Code Online (Sandbox Code Playgroud)
这不是:
const string Domain = "SLO1.Foo.Bar.biz";
const string Container = "CN=Users,DC=SLO1,DC=Foo,DC=Bar,DC=biz";
const string Username = "sanderso";
PrincipalContext principalContext = new PrincipalContext(ContextType.Domain, Domain, Container);
UserPrincipal userPrincipal = UserPrincipal.FindByIdentity(principalContext, Username);
Run Code Online (Sandbox Code Playgroud)
我收到错误消息:
服务器上没有这样的对象.
这是我的ActiveDirectory设置的屏幕截图:

我也尝试使用以下Container:
const string Container = "OU=Users,DC=SLO1,DC=Foo,DC=Bar,DC=biz";
Run Code Online (Sandbox Code Playgroud)
这同样不成功.
如何在访问"用户"容器时指定我的容器?在尝试引入更复杂的需求之前,我尝试将其作为初始的简单设置.所以,我宁愿不满足于这个简单的解决方案,因为我无论如何都要对此进行故障排除,我相信.
我正在学习可转移对象:http://updates.html5rocks.com/2011/12/Transferable-Objects-Lightning-Fast
它们看起来非常棒,我想在我的扩展中使用它们来加速将数据从iframe内部传递到iframe之外.
我有这个示例代码工作,但它使用Web Worker:
var s = document.createElement("script");
s.type = "text/js-worker";
s.innerHTML = 'console.log("i ran!");';
document.body.appendChild(s);
var blob = new Blob(Array.prototype.map.call(document.querySelectorAll("script[type=\"text\/js-worker\"]"), function (oScript) {
return oScript.textContent;
}), { type: "text/javascript" });
var worker = new Worker(window.URL.createObjectURL(blob));
var arrayBuffer = new ArrayBuffer(1);
worker.onmessage = function (oEvent) {
console.log("Called back by the worker!\n");
};
console.log("worker:", worker);
worker.postMessage(arrayBuffer, [arrayBuffer]);
if (arrayBuffer.byteLength) {
console.error("nope");
} else {
console.log("it worked");
}
Run Code Online (Sandbox Code Playgroud)
有没有人有任何关于支持的信息,或支持使用端口的crbug的时间表,如:
var port = chrome.runtime.connect({
name: 'youTubeIFrameConnectRequest'
});
//port.postMessage -- transferrable …Run Code Online (Sandbox Code Playgroud) 我正在查看以下指南:https://developers.google.com/youtube/v3/getting-started
与YouTube的API互动的第一步是:
您需要Google帐户才能访问Google Developers Console,请求API密钥并注册您的应用程序.
他们继续展示他们使用密钥的示例:
网址:https: //www.googleapis.com/youtube/v3/videos? id = 7lCDEYXw3mM&key = YOUR_API_KEY&part = snippet,contentDetails,statistics,status
我有一个客户端应用程序,很多人都使用它.该应用程序向YouTube的API发出搜索请求.YouTube的API每天的请求数量限制为5000万次.
由于它是客户端应用程序,因此我的API密钥嵌入到代码中.
今天,恶意用户编写了一些内容来最大化请求: 
我想知道我有什么办法可以抵御这种活动.我唯一选择托管服务器,通过我的服务器路由所有对YouTube API的需求,并在太频繁时拒绝请求?
我真的担心实现类似的东西.它会有效地使每个API请求的等待时间加倍,并且还会给服务器增加一笔看似不必要的金额,但可能需要它.
我还有其他选择吗?
谢谢
javascript ×5
c# ×3
.net ×1
asp.net-mvc ×1
asynchronous ×1
browser ×1
client-side ×1
css ×1
google-api ×1
guid ×1
performance ×1
primary-key ×1
sql-server ×1
testing ×1
transferable ×1
wix ×1
youtube ×1
youtube-api ×1