我是Web应用程序的新手,更具体地说是这种MV*模式.我们正在创建一个Web应用程序,我们正在考虑脱离jQuery,而不是完全,但我们正在尝试使用MVC,MVVM或MVP支持来实现客户端语言.基本上是将视图与模型分开的东西.作为这种MV*模式的新手我偶然发现了这个网站.
它基本上列出(差不多!)支持这种MV*模式的所有客户端语言/框架,在访问它之后我真的很困惑.因为根据这个网站..
在一天结束时,Ember.js是唯一拥有我想要的东西的框架.我最近将一个相对较小的Backbone.js应用程序移植到了Ember.js,尽管存在一些小的性能问题,但我对得到的代码库感到非常高兴.受到Yehuda Katz的支持,Ember.js周围的社区也令人惊叹.这绝对是值得关注的框架.
但在SO,我发现这个,这让我觉得,角度要好得多,而在如此反复,这和这这让我觉得这可能是骨干什么,我期待的.
更糟糕的是,测试表明结果完全不同.这里
http://jsfiddle.net/HusVw/1/ Backbone clear winner
http://jsfiddle.net/ericf/NrpcQ/ Backbone winner again
http://jsperf.com/angular-vs-knockout-vs-extjs-vs-backbone/2 angular winner for less data for more its knockout
http://jsperf.com/knockout-js-vs-direct-dom-manipulation/3 Backbone again
http://jsperf.com/angular-vs-knockout-vs-ember/33 no way its ember as the site mentioned
所以,基本上这一切都让我感到困惑,我无法决定我应该学习的网名,以及我应该在网站上实施什么.在测试中Backbone明显突出,但我听到了很多knockout,但我提到的SO链接说的是angular什么?我知道这可能取决于我目前正在开发的应用程序,但我想要一个更广泛的观点,不仅对这个项目有用,而且对于更长期的有用?在哪种情况下你更喜欢哪个框架?或者我应该只学习它们吗?(jk,在合理的时间内不能真正做到这一点.)
Dart的目标是"最终取代JavaScript作为开放网络平台上Web开发的通用语言."
所以,如果js将被替换,为什么hack我甚至考虑学习这些js库/框架?
所以,基本上,它都搞砸了,我完全糊涂了?任何人都可以帮我决定吗?
javascript frameworks web-applications backbone.js knockout.js
我有这个查询,但它不能正常工作,
with c as (select
month(bookingdate) as duration,
count(*) as totalbookings
from
entbookings
group by month(bookingdate)
),
d as (SELECT
duration,
sum(totalitems)
FROM
[DrySoftBranch].[dbo].[mnthItemWiseTotalQty] ('1') AS BkdQty
group by duration
)
select
c.duration,
c.totalbookings,
d.bkdqty
from
c
inner join d
on c.duration = d.duration
Run Code Online (Sandbox Code Playgroud)
当我跑这个,我得到了
Msg 8155,Level 16,State 2,Line 1
没有为'd'的第2列指定列.
谁能告诉我我做错了什么?
另外,当我跑这个,
with c as (select
month(bookingdate) as duration,
count(*) as totalbookings
from
entbookings
group by month(bookingdate)
),
d as (select
month(clothdeliverydate),
SUM(CONVERT(INT, deliveredqty))
FROM
barcodetable
where
month(clothdeliverydate) is …Run Code Online (Sandbox Code Playgroud) sql sql-server group-by calculated-columns common-table-expression
在MSDN文档说,当我们写
SELECT TOP(N) ..... ORDER BY [COLUMN]
Run Code Online (Sandbox Code Playgroud)
我们得到排序的前(n)行column(asc或desc取决于我们选择的内容)
但是如果我们没有指定任何顺序,msdn random就像这里Gail Erickson指出的那样说.正如他所指出的它应该是而不是.但正如那点那样unspecifiedrandom
Thomas Lee
当TOP与ORDER BY子句一起使用时,结果集仅限于前N个有序行; 否则,它返回前N个行ramdom
所以,我在没有任何索引的表上运行此查询,首先我运行了这个..
SELECT *
FROM
sys.objects so
WHERE
so.object_id NOT IN (SELECT si.object_id
FROM
sys.index_columns si)
AND so.type_desc = N'USER_TABLE'
Run Code Online (Sandbox Code Playgroud)
然后在其中一个表中,(实际上我在上面查询返回的所有表中尝试了下面的查询)并且我总是得到相同的行.
SELECT TOP (2) *
FROM
MstConfigSettings
Run Code Online (Sandbox Code Playgroud)
这总是返回相同的2行,对于查询1返回的所有其他表也是如此.现在执行计划显示3个步骤..

正如您所看到的,没有索引查找,它只是一个纯表扫描,并且

的Top行示出了实际不为2,也是如此的Table Scan; 事实并非如此(我有很多行).
但是,当我运行类似的东西
SELECT TOP (2) *
FROM
MstConfigSettings
ORDER BY
DefaultItemId
Run Code Online (Sandbox Code Playgroud)
执行计划显示

和

所以,当我不申请时ORDER …
我正在研究一种算法,我给它一些输入,我给它们输出,并给出输出3个月(给或拿)我需要一种方法来查找/计算可能是未来的输出.
现在,给出的这个问题可能与证券交易所有关,我们给出了证明约束和某些结果,我们需要找到下一个.
我偶然发现神经网络股票市场的预测,你可以谷歌它,或者你可以在这里,这里和这里阅读它.
要开始制作算法,我无法弄清楚层的结构应该是什么.
给定的约束是:
现在,我的第一个问题是,我需要输入多少个节点?
输出只有一个,很好.但正如我所说,我应该为输入层采用100个节点(假设股票价格总是整数,并且总是btw 1和100?)
隐藏层怎么样?那里有多少个节点?比方说,如果我在那里采用100个节点,我认为这不会对网络进行太多训练,因为我认为对于每个输入我们还需要考虑所有先前的输入.
比如说,我们在第4个月的第1天计算输出,我们应该在隐藏/中间层有90个节点(为了简单起见,想象每个月是30天).现在有两种情况
无论情况如何,现在当我们计算第4个月第2天的输出时,我们不仅需要那些90个输入,而且还需要最后的结果(而不是预测,它是否相同!)所以我们现在我们的中间/隐藏层有91个节点.
依此类推,它每天都会增加节点数量,AFAICT.
所以,我的另一个问题是,如果动态变化,我如何定义/设置隐藏/中间层中的节点数.
我的最后一个问题是,有没有其他特殊的算法(对于这种事物/东西),我不知道?我应该使用而不是搞乱这个神经网络的东西?
最后,有什么东西,我可能会失踪,可能会导致我(而不是我正在做的算法)预测输出,我的意思是任何警告,或任何可能使我错过的东西,我可能会失踪?
这是一个非常奇怪的情况,首先是代码......
代码
private List<DispatchInvoiceCTNDataModel> WorksheetToDataTableForInvoiceCTN(ExcelWorksheet excelWorksheet, int month, int year)
{
int totalRows = excelWorksheet.Dimension.End.Row;
int totalCols = excelWorksheet.Dimension.End.Column;
DataTable dt = new DataTable(excelWorksheet.Name);
// for (int i = 1; i <= totalRows; i++)
Parallel.For(1, totalRows + 1, (i) =>
{
DataRow dr = null;
if (i > 1)
{
dr = dt.Rows.Add();
}
for (int j = 1; j <= totalCols; j++)
{
if (i == 1)
{
var colName = excelWorksheet.Cells[i, j].Value.ToString().Replace(" ", String.Empty);
lock (lockObject)
{
if …Run Code Online (Sandbox Code Playgroud) 如果我们用c#(或基本上.Net)开发一些软件,我们不会将visual studio安装到任何客户端.客户端必须安装所需的.Net框架(1.0,1.1,2.0,3.0等),我们很高兴.
同样,如果我们在VC2008中制作应用程序,他只需要具有Visual C++ 2008运行时(可从MS站点免费获得,大约4-5Mb).所以,基本上,我们只需要运行时环境.但是没有任何SQL Server 2008运行时(或者我不知道它?).
所以,我的问题是,如果我的软件使用的是SQL Server 2008,那么在客户端需要什么运行时(或其他任何东西)来运行它?
另外,还有一件事,我看到有一个SQL Server Express版本,我可以在部署中使用它,但是看起来有点沉重,知道如果我的软件只需5,10或20Mb我需要安装一个演出只是这样用户可以运行它.
最后,如果我使用的是SQL Server 2008 Developer Edition(我或者是企业版)并且我在客户端上安装了SQL Server Express,如果我的软件使用了某些不支持的功能,它不会导致一些问题版?(比如数据库的数量,或并发连接,或任何东西).
所以?它需要什么运行时间?如果安装sql server express是唯一的选择,如果我使用的是Express版本不支持的某些功能,该怎么办?当然,我不能继续在每个客户端上完整安装开发人员版本!
编辑:如果这有任何帮助,我当前的项目是一个图书馆管理系统,它将安装在客户端(图书管理员的计算机,我正在为此制作),所以这里没有服务器客户端的情况.那我应该在他的电脑上安装sql express吗?此外,正如YvesR他的回答所指出的,该链接仅显示三个版本(主要版本),但http://msdn.microsoft.com/en-us/library/cc645993%28v=SQL.110%29.aspx显示更多详细比较.那么,在我刚刚描述的这个特定场景中,如果我只是在客户端的机器上部署和表达版本,那就足够了吗?
现在,关于我所说的快递版中没有的一些功能, http://msdn.microsoft.com/en-us/library/cc645993(v = SQL.110).aspx#CrossBoxScale 表明快递版是有限的到了一个大小为10Gb的数据库,现在我知道在我上面描述的场景中已经足够了,但是如果在其他情况下我还需要更多呢?比快递版本不会这样做,我应该如何部署?
最后,http://www.microsoft.com/sqlserver/en/us/get-sql-server/how-to-buy.aspx显示了另外两个版本,Compact和Developer,我对开发人员有所了解但是这个紧凑版本是什么?更重要的是,为什么这些没有被哄骗或列在这里?
编辑2:其4Gb,限制,而不是10Gb.10Gb在SQL Server 2008 R2 Express及更高版本中,在SQL Server 2008 Express中为4Gb.
marc_s:谢谢你!
我有这张桌子
CREATE TABLE [dbo].[CityMaster](
[CityID] [int] NOT NULL,
[City] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[BranchId] [varchar](10) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL CONSTRAINT [DF__CityM__Branc__74444068] DEFAULT ((0)),
[ExternalBranchId] [varchar](max) COLLATE SQL_Latin1_General_CP1_CI_AS NULL,
CONSTRAINT [PK_CityMaster] PRIMARY KEY CLUSTERED
(
[City] ASC,
[BranchId] ASC
),
CONSTRAINT [uk_citymaster_cityid_branchid] UNIQUE NONCLUSTERED
(
[CityID] ASC,
[BranchId] ASC
)
)
Run Code Online (Sandbox Code Playgroud)
和另一张桌子
CREATE TABLE [dbo].[CustomerMaster](
[ID] [int] NOT NULL,
[CustomerCode] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[CustomerName] [varchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[CustomerAddress] [varchar](100) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL,
[CustomerPhone] [varchar](max) COLLATE …Run Code Online (Sandbox Code Playgroud) sql-server constraints foreign-keys relational-database relationship
我有vs 2015和asp.net mvc 5网站.它运行正常,直到一段时间,但就在今天我注意到它停止工作.当我开始调试时,visual studio运行正常,IIS Express也是如此,但无法找到localhost页面.
这就是我的IIS Express.
和视觉工作室
和浏览器
我无法弄清楚出了什么问题.我尝试过的东西,没有帮助:
1)重新安装(清理)IIS Express 10
2)删除文件夹,C:\Users\Razor\Documents\IISExpress以便在重新启动visual studio时再次创建文件夹.
3)删除了Solution文件夹的.vs目录(包含applicationhost.config)并再次重新创建.
上述方法都没有奏效.任何人都可以帮我弄清楚这里出了什么问题吗?
这听起来像是一个愚蠢的问题,因为如果您使用Google "OOPS"还是"OOPS in C#"会获得大量结果。但。
我知道的概念OOP一样abstraction,inheritance并没有什么......但我想看到的是一些“ 实际可用例如编程”吧。就像polymorphism 您知道的一个实际例子一样Object.GetType。
有时候(如果不是很多的话),我发现自己在做一些事情,例如单击按钮,打开连接并做一些事情,这不是OOP我所知道的,我应该有一个特定的实体/类,并且应该有一个用于我在单击按钮时所做的事情,然后应该调用该方法,而不是在单击按钮时执行所有操作。
另一个例子是,我发现自己在某个the txtEmployeeName.Leave事件中加载了员工从事的所有项目,然后为这些项目填充了组合。这也不是面向OOP的,我应该具有class Employee和一个方法,该方法可以加载该员工从事的所有项目,然后在处调用该方法txtEmployeeName.Leave。
当我发现或阅读某个地方(在线或其他地方)时,我看到类似的东西是,Vehicle是一个抽象类,并且Car是一个Vehicle,因此它是从继承的Vehicle,这是Inheritance。我们都知道,但这不是实际的事情。我发现的另一个示例是,如果我们有一个方法MakeSound,并且将其称为对象Cat,它将成为对象Purr,但是如果我们对调用相同的方法Dog,它将Bark是Polymorphism。
它对理解很有帮助,但不是“ 实用 ”的,或者您应该说“ 真实的编程示例 ”。因此,我需要知道的是,有什么好的资源(在线,书籍或其他资源),我可以阅读有关OOP的内容,但不像我在上一段中所给出的实例一样,但是实际上有一些“真实的编程示例”使我的代码更OO?
我知道这可能听起来像一个愚蠢的问题,但请耐心等待.在SQL-server中我们有
SELECT TOP N ...
Run Code Online (Sandbox Code Playgroud)
现在,我们可以按升序(默认情况下)获得前n行,很酷.如果我们想要在任何其他列上对记录进行排序,我们只需在order by子句中指定,就像这样......
SELECT TOP N ... ORDER BY [ColumnName]
Run Code Online (Sandbox Code Playgroud)
更酷.但如果我想要这一last行怎么办?我只是写这样的东西......
SELECT TOP N ... ORDER BY [ColumnName] DESC
Run Code Online (Sandbox Code Playgroud)
但对此有一点关注.我说关心而不是问题因为它实际上不是问题.通过这种方式,我可以根据该列获取最后一行,但如果我想要插入的最后一行该怎么办.我知道SCOPE_IDENTITY,IDENT_CURRENT和@@IDENTITY,但考虑heap(表中没有clustered index)没有任何标识列,并从许多地方多次访问(请不要进入这个太多,因为这些多操作的方式和时间正在发生,这并未"关注主要的事情).所以在这种情况下,似乎没有一种简单的方法可以找到最后插入的行.有些人可能会这样回答
如果从[table]中选择*,则sql结果窗口中显示的最后一行将是最后一行插入的.
对于任何想到这一点的事情,事实并非如此,至少并非总是如此,你可以永远依赖(msdn,请阅读本Advanced Scanning节).
所以问题归结为这一点,就像标题本身一样.为什么SQL Server没有
SELECT LAST
Run Code Online (Sandbox Code Playgroud)
或者说
SELECT BOTTOM
Run Code Online (Sandbox Code Playgroud)
或类似的东西,我们不必指定Order By,然后它会在执行查询时给表中插入最后一条记录(同样我不会详细说明如果未提交的话会导致这种结果如何读或幻读().
但是,如果仍然有人争辩说,如果不谈论这些阅读水平,我们就不能谈论这个问题,那么,对于他们来说,我们可以使它的行为与TOP工作方式相同,但恰恰相反.但如果你的论点是,那么我们就不会像往常那样需要它
SELECT …Run Code Online (Sandbox Code Playgroud) sql-server ×5
c# ×4
sql ×3
.net ×1
.net-4.0 ×1
algorithm ×1
backbone.js ×1
constraints ×1
deployment ×1
foreign-keys ×1
frameworks ×1
group-by ×1
iis-express ×1
javascript ×1
knockout.js ×1
object ×1
oop ×1
prediction ×1
relationship ×1
runtime ×1
select ×1
sql-order-by ×1
t-sql ×1