我有一个关于Entity Framework查询执行性能的问题.
架构:
我有这样的表结构:
CREATE TABLE [dbo].[DataLogger]
(
[ID] [bigint] IDENTITY(1,1) NOT NULL,
[ProjectID] [bigint] NULL,
CONSTRAINT [PrimaryKey1] PRIMARY KEY CLUSTERED ( [ID] ASC )
)
CREATE TABLE [dbo].[DCDistributionBox]
(
[ID] [bigint] IDENTITY(1,1) NOT NULL,
[DataLoggerID] [bigint] NOT NULL,
CONSTRAINT [PrimaryKey2] PRIMARY KEY CLUSTERED ( [ID] ASC )
)
ALTER TABLE [dbo].[DCDistributionBox]
ADD CONSTRAINT [FK_DCDistributionBox_DataLogger]
FOREIGN KEY([DataLoggerID]) REFERENCES [dbo].[DataLogger] ([ID])
CREATE TABLE [dbo].[DCString]
(
[ID] [bigint] IDENTITY(1,1) NOT NULL,
[DCDistributionBoxID] [bigint] NOT NULL,
[CurrentMPP] [decimal](18, 2) NULL,
CONSTRAINT [PrimaryKey3] …Run Code Online (Sandbox Code Playgroud) c# sql-server entity-framework sql-server-2008 entity-framework-6
我的最新版本有问题globalize.js.要使用它,我必须加载cldr modules和语言定义.
现在我从全球化文档中得到了这个例子:
// loading needed modules
$.get('/Scripts/cldr/supplemental/likelySubtags.json', Globalize.load);
$.get('/Scripts/cldr/main/en/numbers.json', Globalize.load);
$.get('/Scripts/cldr/main/de/numbers.json', Globalize.load);
// set current language
lobalize.locale('de-de');
Run Code Online (Sandbox Code Playgroud)
我现在的问题是本地json文件加载异步.这意味着在我的脚本尝试设置当前语言的那一刻,模块尚未加载.
现在我试着变得聪明并做到了这一点:
$.get('/Scripts/cldr/supplemental/likelySubtags.json', function (data) {
Globalize.load(data);
Globalize.locale('de-de');
});
$.get('/Scripts/cldr/main/en/numbers.json', Globalize.load);
$.get('/Scripts/cldr/main/de/numbers.json', Globalize.load);
Run Code Online (Sandbox Code Playgroud)
这将一直有效,直到我真正使用全球化格式方法.在我的HTML里面,我在一个淘汰赛绑定中使用全局化,如下所示:
<span data-bind="text: Globalize.formatNumber(SomeNumber, { maximumFractionDigits: 0 })"></span>
Run Code Online (Sandbox Code Playgroud)
现在"formatNumber"方法抛出错误,因为在绑定发生时并非所有模块都被加载.
我现在的问题是,如何同步我的JavaScript?
我想在Azure云服务工作者角色中托管嵌入式FTP服务器.
要提供对FTP服务器的被动访问,它使用端口范围20000-21000.ServiceDefinition.csdef我在里面定义了所有需要的端口(见截图).
主要问题是港口数量巨大.如果我尝试将服务上传到云端,则会出现以下错误.
验证错误:输入端点数无效 - 当前1002,最大值 25
如何通过云服务实现这项工作?
在.Net 4.5中,System.IO.Compression.ZipArchive类获得了一些更新。
如此处可读(http://msdn.microsoft.com/en-us/magazine/jj133817.aspx)所示,它现在应该执行“典型操作不需要将整个档案读入内存”。
为了进行测试,我尝试压缩10个文件,每个文件200MB。
如果您使用以下代码创建新的zip存档,则效果很好(在整个过程中内存使用率较低):
for (int directoryGroupIndex = 0; directoryGroupIndex < directoryGroups.Count; directoryGroupIndex++)
{
String directoryGroupKey = directoryGroups.Keys.ElementAt(directoryGroupIndex);
FileInfo[] directoryGroup = directoryGroups[directoryGroupKey];
String archiveFileName = String.Format("Readed Logfiles{0}", archiveFileExtension);
String archiveFileFullName = Path.Combine(directoryGroupKey, archiveFileName);
FileInfo archiveFile = new FileInfo(archiveFileFullName);
using (FileStream archiveFileStream = new FileStream(archiveFile.FullName, FileMode.OpenOrCreate, FileAccess.Write, FileShare.Read))
using (ZipArchive archive = new ZipArchive(archiveFileStream, ZipArchiveMode.Create, false))
{
for (int directoryGroupFileIndex = 0; directoryGroupFileIndex < directoryGroup.Length; directoryGroupFileIndex++)
{
FileInfo file = directoryGroup[directoryGroupFileIndex];
String archiveEntryName = file.Name;
String archiveEntryPath = …Run Code Online (Sandbox Code Playgroud) c# ×3
.net-4.5 ×1
azure ×1
cldr ×1
compression ×1
endpoint ×1
ftp-server ×1
javascript ×1
jquery ×1
json ×1
knockout.js ×1
sql-server ×1
zip ×1