刚开始玩breeze.js因为编码时间明显增加,即直接在Javascript中管理从服务器访问模型数据(我在这里是新手,所以很明显没有!).
在过去,我使用股票ajax调用来获取/发布数据到服务器,我过去使用了一些不同的客户端工具来提供查询本地数据的一些帮助,例如jLinq.
我的问题是这个.在Javascript中拥有基本完整的模型查询访问权限不是很危险吗?我必须遗漏一些东西,因为它看起来像是一个经过深思熟虑的工具.在过去,我至少控制了可以通过后端查询过程发送给客户端的内容,并再次使用类似jLinq等的东西我可以过滤数据等.我也可以理解权衡可能获得直接查询/没有重复的本地模型问题,所以,如果有人能提供一些洞察力吗?
谢谢!
编辑 显然我不是唯一一个,但我猜测有一个合理的反应 - 可能限制使用DTO方法或其他东西要求的数据?发布的另一个问题是在这里
我从命令行条目加载并运行IIS express.我使用默认的applicationhost.config文件(我知道它是正确的文件,因为我已经更改了第一个站点的端口几次等).
奇怪的是,我有两个网站定义,只有第一个被加载?我相信IIS express可以加载多个站点吗?只要不同的端口?
这是<sites>applicationhost.config文件中的定义位:
<sites>
<site name="BF Local SVN" id="1">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\_CODE SOURCECONTROL\BizzfaceLocalSVN" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:6464:localhost" />
</bindings>
</site>
<site name="SquirrelITfreeformBS" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\_CODE SOURCECONTROL\SquirrelITfreeformBS" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:6465:localhost" />
</bindings>
</site>
<siteDefaults>
<logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" />
<traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" />
</siteDefaults>
<applicationDefaults applicationPool="Clr4IntegratedAppPool" />
<virtualDirectoryDefaults allowSubDirConfig="true" />
</sites>
Run Code Online (Sandbox Code Playgroud)
如您所见,定义了两个站点,不同的站点ID和不同的端口?
有任何想法吗?
我觉得这个问题就像粘土皮江射击......"拉......砰!" ..击落......但是,我相信这是值得的.
现在有很多JS框架等使用JSON,我知道这个理由很充分.经典问题是"将数据转换为JSON的位置".
我理解在管道中的某个时刻,你必须将数据转换为JSON,无论是在数据访问层(我在看JSON.NET)还是我相信.NET 4.x都有输出方法/序列化为JSON.
所以问题是:考虑将SQL函数输出为JSON真的是个坏主意吗?
限定符:我理解尝试输出这样的1000行并不是一个好主意 - 实际上对于Web应用程序来说这不是一个好主意,除非你真的必须这样做.根据我的要求,我一次可能需要100行......
我在磁盘上有一个非常基本的XML结构/文件,类似于:
<root>
<data timestamp="dd-mm-yyyy" type="comment">kdkdkdk</data>
<data timestamp="dd-mm-yyyy" type="event">kdkdkdkgffgfdgf</data>
<data timestamp="dd-mm-yyyy" type="something">kddsdsfsdkdkdk</data>
</root>
Run Code Online (Sandbox Code Playgroud)
如上所述,XML将位于磁盘上的外部文件中.由于文件可能会变得相当大(实际上每隔几周会被"修剪"),我不想先加载XML文件来添加新节点......
有没有办法添加这样的新节点?它可以被添加到顶部/底部等,因为实际使用XML的进程无论如何都按时间戳对它进行排序.
我猜测粗略的方法是将节点作为文本附加..但是我认为这会在结束标记之后添加节点?
任何想法都感激不尽......大卫.
我正在使用SQL Server(2008/2012),我知道很多搜索都有类似的答案,但我似乎无法为我的案例找到合适的示例/指针.
我在SQL Server表中有一个XML列来保存这些数据:
<Items>
<Item>
<FormItem>
<Text>FirstName</Text>
<Value>My First Name</Value>
</FormItem>
<FormItem>
<Text>LastName</Text>
<Value>My Last Name</Value>
</FormItem>
<FormItem>
<Text>Age</Text>
<Value>39</Value>
</FormItem>
</Item>
<Item>
<FormItem>
<Text>FirstName</Text>
<Value>My First Name 2</Value>
</FormItem>
<FormItem>
<Text>LastName</Text>
<Value>My Last Name 2</Value>
</FormItem>
<FormItem>
<Text>Age</Text>
<Value>40</Value>
</FormItem>
</Item>
</Items>
Run Code Online (Sandbox Code Playgroud)
因此,即使结构<FormItem>相同,我也可以拥有多个(通常不超过20-30个)表单项.
我本质上是尝试以下面的格式从SQL返回一个查询,即基于/ FormItem/Text的动态列:
FirstName LastName Age ---> More columns as new `<FormItem>` are returned
My First Name My Last Name 39 Whatever value etc..
My First Name 2 My Last Name 2 40
Run Code Online (Sandbox Code Playgroud)
所以,目前我有以下内容: …
我显然缺少一些概念/理解,绝大多数是javascript OO基础知识!
我喜欢使用RequireJS,现在我的网络应用程序看起来更像是一个结构化的应用程序,而不是一堆疯狂的代码.
我正在努力了解如何/如果可能的话.
我有一个模块作为基础数据服务模块,名为dataservice_base,如下所示:
define(['dataservices/dataservice'], function (dataservice) {
// Private: Route URL
this.route = '/api/route-not-set/';
var setRoute = function (setRoute) {
this.route = setRoute;
return;
}
// Private: Return route with/without id
var routeUrl = function (route, id) {
console.log('** Setting route to: ' + route);
return route + (id || "")
}
// Private: Returns all entities for given route
getAllEntities = function (callbacks) {
return dataservice.ajaxRequest('get', routeUrl())
.done(callbacks.success)
.fail(callbacks.error)
};
getEntitiesById = function (id, callbacks) …Run Code Online (Sandbox Code Playgroud) 好吧,对 JSON 格式有点陌生..
我有以下从 AJAX 调用返回的 JSON 字符串,该 firebug 实际上很好地显示在树中..但是我似乎无法弄清楚如何循环访问内容...
{"data":{"item":[{"@id":"7","fromMemberID":"7","FromMember":"david","notificationsType":"event","notificationsDesc":"A new event (Test Event Thursday, 16 September 2010) has been created.","notificationsDate":"16 Sep 2010","notificationsTime":"00:02:18"},{"@id":"8","fromMemberID":"7","FromMember":"david","notificationsType":"event","notificationsDesc":"A new event (Test Event Thursday, 16 September 2010) has been created.","notificationsDate":"16 Sep 2010","notificationsTime":"08:26:24"}]}}
Run Code Online (Sandbox Code Playgroud)
我试图说获取项目数..alert(data.item.length); 或循环:
for(i=0; i<data.item.length; i++)
{
alert(data.item[i].FromMember);
}
Run Code Online (Sandbox Code Playgroud)
显然缺少一些基本的东西......
有任何想法吗??
我最近对一个只使用 JavaScript 和 jQuery 的求职申请进行了 30 分钟的测试。不必设计得很好或任何东西。我用 Javascript 和 jQuery 创建了一个非常基本的“30 分钟”页面,我认为它“还可以”。如果有更有效/更好的方法,我只是想得到一些反馈?事实证明,我没有得到这份工作……一直在学习,而且这份工作离我住的地方很远。
无论如何,给出的原始 HTML 页面如下,之后是我将基本 HTML 转换为基于选项卡的内容页面的谦虚尝试 - 再次在 30 分钟内。
<html>
<head>
<!-- stylesheet, javascript, etc. here -->
</head>
<body>
<h1>My Page</h1>
<h2 class="subheading">The first section</h2>
<div class="content">
<p>Lorem ipsum...</p>
</div>
<h2 class="subheading">The second section</h2>
<div class="content">
<img src="/some_image" alt="Image" title="Image"></img>
<p>Some other text</p>
</div>
<h2 class="subheading">The third section</h2>
<div class="content">
And some more text here
</div>
<div class="footer">
This is at the foot of the page
</div>
</body> …Run Code Online (Sandbox Code Playgroud) 不确定这个问题是否会导致一些糟糕的表现,但现在似乎至少感觉"更好的方式".
我想要做的是这样的:
我有一个名为CONTACTS的表,其中包含一个名为memberID的主键字段
我还有一个XML字段,其中包含您朋友的ID(例如)..喜欢:
<root><id>2</id><id>6</id><id>14</id></root>
Run Code Online (Sandbox Code Playgroud)
所以我通过存储过程尝试做的是传递你的会员ID,并返回你所有的朋友信息,例如:
select name, address, age, dob from contacts
where id... xml join stuff...
Run Code Online (Sandbox Code Playgroud)
我之前使用它的方式(好吧!)将所有XML节点(/ root/id)选中到临时表中,然后从该临时表到联系表进行连接以获取联系人字段...
任何帮助都非常感谢..从.query .nodes示例中略微超载,当然这可能是更好的方法...
提前致谢!
< - 编辑 - >我确实得到了一些工作,但看起来像一个SQL frankenstein声明!基本上我需要从XML字段中获取朋友联系人ID,并填充到临时表中,如下所示:
Declare @contactIDtable TABLE (ID int)
INSERT INTO @contactIDtable (ID)
SELECT CONVERT(INT,CAST(T2.memID.query('.') AS varchar(100))) AS friendsID
FROM dbo.members
CROSS APPLY memberContacts.nodes('/root/id/text()') AS T2(memID)
Run Code Online (Sandbox Code Playgroud)
但是老实说!转换/转换的东西看起来很严重..因为我需要获得下一位的INT,这是实际的连接以返回联系人数据,如下所示:
SELECT memberID, memberName, memberAddress1
FROM members
INNER JOIN @contactIDtable cid
ON members.memberID = cid.ID
ORDER BY memberName
Run Code Online (Sandbox Code Playgroud)
结果......好吧它工作..在我的情况下,我的memberContacts XML字段有3个节点(在这种情况下为id),上面的查询返回3行数据(memberID,memberName,memberAddress1)...
当然这一点的重点是尝试保存创建一个很多连接表,即所有朋友ID的列表...只是不确定上面是否实际上使这更快更容易...
尝试这样做的想法/更有效的方法???
我已经查看了SQL Merge语句的各种示例..所有这些都看起来很棒,虽然由于某些原因我似乎无法从我的Merge测试中获得正确/预期的结果.
快速概述: 我有一个包含一些设计数据的简单表格.阅读MERGE似乎指向一种更有效的方法来进行 'upsert'(即:根据记录是否存在,插入或更新).
所以SQL 2008代码就是这样的(对不起,如果它还没有完全完成,因为我正在处理它!):
这将是一个存储过程,所以@values显然是传递的参数..
merge designs as ds
using ( select designname, designcode from designs) as dsi
on (@passedDesignName = dsi.designname and @passedDesignCode = dsi.designcode)
when matched then
update set ds.designname = @passedDesignName, ds.designcode = @passedDesignCode
when not matched then
insert (designname, designcode)
values (@passedDesignName, @passedDesignCode)
Run Code Online (Sandbox Code Playgroud)
这个问题似乎超出了我正在测试的7条记录中,所有这些记录似乎都在更新,显然我只能看到一条与更新相匹配的记录..而奇怪的是,如果我传递一些新数据(designname)和设计代码),我似乎得到一个重复插入...从我上次的测试看起来似乎有7个新的插入,我猜不只是一个侥幸..
希望我已经正确解释了这一点.攻击新事物的一部分主要是让上下文正确吗?
提前感谢您的任何反馈.
PS:对不起,合并声明结尾有一个分号!完成解析检查/语法.
javascript ×4
xml ×3
c# ×2
json ×2
sql ×2
sql-server ×2
t-sql ×2
.net ×1
amd ×1
breeze ×1
css ×1
html ×1
iis-express ×1
jquery ×1
pivot ×1
requirejs ×1
xquery-sql ×1