Steve Sanderson在2012年的荷兰Techdays上做了非常有趣的演讲.在其中一个中,他提出了一个用于MVC应用程序中客户端 - 服务器通信的库:Upshot.
我真的很惊讶它是多么容易使用它,所以我想下载并测试它.我在这里通过NuGet找到了下载链接,但我找不到任何文档.有没有人有一些有用的东西?我还要感谢Steve在演示过程中展示的示例代码.
编辑:
我找到了我在Techdays参加的在线演讲.这太值得一看了.您将了解结果的功能,并了解如何从中开始.祝好运并玩得开心点.
链接:http://channel9.msdn.com/Events/TechDays/Techdays-2012-the-Netherlands/2159
我的公司正在使用MVC 4中的新Web API/SPA功能将其电子商务站点重新编写为单页面应用程序.我们不确定如何处理身份验证的最佳方法.
具体问题:
我们如何处理加密和非加密通信?显然,我们需要使用HTTPS进行登录,帐户和结账AJAX,但我们希望使用HTTP浏览目录,以避免昂贵的SSL握手,这会降低整个网站的速度.这对于SPA来说是否可能,或者我们是否仍然坚持使用HTTPS?
我们应该使用哪种身份验证?主要是我们的网站将通过网络浏览器访问,因此cookie可能没问题.但在未来,我们可能想要制作一个自定义的iPhone应用程序.基本身份验证,OpenId或OAUTH更受欢迎吗?如果是这样,为什么?
提前致谢
authentication asp.net-web-api single-page-application asp.net-spa
当我在开发PC上安装MVC4 beta时,它有一个SPA(单页面应用程序)模板.今天在具有相同设置(VS2010 SP1,win7)的不同PC上,我安装了MVC4 RC,但不再提供SPA模板(见图).还有谁有相同的问题吗?或者这是一个我无法找到的记录变更?

我一直在http://www.asp.net/single-page-application/an-introduction-to-spa上阅读MVC 4 SPA .
即使在阅读之后我还不清楚我应该在什么情况下使用SPA.通过查看上面链接上的几个示例,看起来控制器保持不变.MVC网页与SPA之间的区别在于SPA是否包含许多Javascript框架?如果我们将这些Java Script框架(Jquery,Knockout,Upshot等)与MVC Web一起使用,我们可以获得与SPA相同的结果吗?OR SPA是指整个网络应用程序的一页?
另外,我们是否正在使用SPA的布局页面?
谢谢你的澄清.希望有人不会 - 投票.
在使用MVC 4的新单页应用程序工具时,我注意到我找到的所有示例都没有包含通过WebApi更新的DateTime示例.我很快发现了原因.
我首先从提供的模板生成标准SPA.然后我打开了TodoItem.cs并添加了DateTime字段.然后我按照评论的指示生成了控制器.(没有datetime字段,一切正常).
生成所有内容后,我启动了应用程序并导航到控制器索引(我称之为控制器"任务").我按预期获得了0个记录的网格页面并单击了添加按钮.我按预期被带到了编辑页面并输入了一些数据,包括我闪亮的新日期时间字段中的日期.然后点击保存.
产生了一个错误:
服务器错误:HTTP状态代码:500,消息:反序列化System.Web.Http.Data.ChangeSetEntry []类型的对象时出错.DateTime内容'01/01/2012'不以'/ Date('和以')/'结尾,如JSON所要求的那样.
看起来工具还不支持DateTime.我确信我可以花一些时间来搞清楚并让它发挥作用,但我想我可能会在这里找到一些运气,因为已经解决了这个问题且可以提供洞察力的人.
有人已经在争吵吗?
更新:我提出了自问这个以来我发现的更多信息.我尝试使用JSON.Net作为我的Formatter,如下所示.我认为这将是最终的解决方案,但是,正如下面推荐的海报还不够.
使用JSON.Net序列化程序时,我收到以下错误:
此DataController不支持实体'JObject'的操作'Update'.
原因是JSON.Net没有完全填充格式化程序试图取消规划的对象(System.Web.Http.Data.ChangeSet).
发送的json是:
[{"Id":"0",
"Operation":2,
"Entity":
{"__type":"TodoItem:#SPADateProblem.Models",
"CreatedDate":"/Date(1325397600000-0600)/",
"IsDone":false,
"Title":"Blah",
"TodoItemId":1},
"OriginalEntity":
{"__type":"TodoItem:#SPADateProblem.Models",
"CreatedDate":"/Date(1325397600000-0600)/",
"IsDone":false,
"Title":"Blah",
"TodoItemId":1}
}]
Run Code Online (Sandbox Code Playgroud)
内置的Json Formatter能够将此Json重构为ChangeSet对象,并在Entity和OriginalEntity字段中嵌入TodoItem对象.
有没有人得到JSON.Net来正确反序列化?
我正在尝试此处找到的“VueJS with Asp.Net Core 3.1 Web API Template” ,它在开发过程中运行得非常顺利。然而,我想看看它如何处理发布,但我无法让它工作。
运行发布到文件夹时,它不会将 clientapp/dist 文件夹移动到输出目录,这是可以的,所以我想我应该手动执行此操作。因此,我尝试将 dist 文件夹的内容移动到具有以下路径的输出目录:
但以上似乎都不起作用,运行 .dll 文件时出现以下错误:
fail: Microsoft.AspNetCore.Server.Kestrel[13]
Connection id "0HLTD93CRG52F", Request id "0HLTD93CRG52F:00000001": An unhandled exception was thrown by the application.
System.InvalidOperationException: The SPA default page middleware could not return the default page '/index.html' because it was not found, and no other middleware handled the request.
Your application is running in Production mode, so make sure it has been published, or that you …Run Code Online (Sandbox Code Playgroud) 我在 ASP.Net Core 3 中使用 SPA (React) 应用程序。
正在发生的是任何请求将首先进入后端并允许 .Net 尝试路由它,如果没有找到路由,它会返回index.html并假设 SPA 可以处理路由。
大多数时候我对此很满意,但我想知道是否有办法排除任何路由器api/。
我觉得很烦人,在任何虚构的 .html 上返回 index.html(带有 200)api/MadeUp/Request。我不能让它在无效的 api 请求上返回 500,但仍然允许 SPA 管理任何其他请求(即返回 index.html)?
我在我的ASP.NET WebAPI项目中使用Breeze,我添加了breezecontroller
[BreezeController]
public class BreezeController : ApiController
{
readonly EFContextProvider<MyEntities> _context
= new EFContextProvider<MyEntities>();
[HttpGet]
public string Metadata()
{
return _context.Metadata();
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,当我调用createEntity时,我得到错误 无法在没有先设置其键或将其entityType'AutoGeneratedKeyType'属性设置为'None'以外的其他内容的情况下将对象附加到EntityManager
当调用元数据api时,不是breeze自动初始化实体吗?
TIA
asp.net-spa ×8
asp.net-core ×2
asp.net ×1
asp.net-mvc ×1
breeze ×1
c# ×1
datetime ×1
installer ×1
javascript ×1
singlepage ×1
upshot ×1