这应该只替换UpdateTarget,但它没有,它取代了整个页面,我不明白为什么.正在返回正确的局部视图,但它不是替换目标ID,而是替换整个页面.
<div id="magHeader">
<p>this is a test.</p>
@Ajax.ActionLink("Edit", "GetEditor", "Home", new AjaxOptions(){ UpdateTargetId = "magHeader", InsertionMode = InsertionMode.Replace})
</div>
Run Code Online (Sandbox Code Playgroud)
在运行时,链接如下所示:
<a href="/Home/GetEditor" data-ajax-update="#magHeader" data-ajax-mode="replace" data-ajax="true">Edit</a>
Run Code Online (Sandbox Code Playgroud)
有什么我做错了吗?在过去成功完成了这项工作,没有任何问题.
编辑 此问题的根本原因是在VS 2012中,您只需要添加对JQueryVal包的引用以使其工作.但是,在2013年,BundleConfig.cs被更改,因此JQueryVal包不再包含JQuery.Unobtrusive.所以简单的解决方法是将它添加回包中:
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
"~/Scripts/jquery.unobtrusive*",
"~/Scripts/jquery.validate*"));
Run Code Online (Sandbox Code Playgroud)
然后一切都会按预期工作.
默认情况下,Razor Page应用程序会转到Home/Index
有没有办法将其更改为Home/App?
这在MVC中非常简单,但是使用不同路由设置并因此使用MVC路由的Razor页面不适用.
我认为它会在某个选项中出现,但我看不到它:
services.AddMvc()
.AddRazorPagesOptions(options =>
{
options.Conventions.AuthorizeFolder("/Account/Manage");
options.Conventions.AuthorizePage("/Account/Logout");
options. ??SetDefaultPage??
});
Run Code Online (Sandbox Code Playgroud)
我试过这个:
options.Conventions.AddPageRoute("/App", "");
但现在找到两个默认路由并生成错误:
AmbiguousActionException:匹配多个动作.以下操作匹配路由数据并满足所有约束:
页面:/ App
页面:/索引
可以通过从项目中删除Pages/Index.cshtml来解决此错误,但我也希望保留该页面.
我想通过 Blazor 技术开发一个 SPA 项目。
由于调试 Blazor Web 程序集应用程序的复杂性,我想先将其创建为服务器端应用程序,然后再将其更改为 Web 程序集应用程序应用程序。
这可能吗?如果是这样,在我成功使服务器端 Blazor 项目工作后,我需要进行哪些更改才能获得与 WebAssembly 项目相同的功能?
另外,在我的服务器端 Blazor 项目中是否有任何我应该避免的特定方法或技术,因为它们在使用 WebAssembly 时没有等效项?
我有一项包含项目目录的服务。这些项目取决于服务的活跃公司。
// Tell Service to refresh in context of Company 1
await Service.SetActiveCompany(1);
// Get Catalog (which will be in the context of Company 1)
Catalog catalog = Service.Catalog;
// Tell Service to refresh in context of Company 2
await Service.SetActiveCompany(2);
// Get Catalog (which will be in the context of Company 2)
catalog = Service.Catalog;
Run Code Online (Sandbox Code Playgroud)
上面的方法单独运行效果很好。目录将更新为来自相应公司的项目。
在我的应用程序中,我有一个布局,其中包括用于选择活动公司的下拉列表。当这种情况发生变化时,我打电话:
await Service.SetActiveCompany(dropdown.selectedCompanyId);
Run Code Online (Sandbox Code Playgroud)
在服务中,我刷新目录并引发事件
public class CompanyChangedEventArgs : EventArgs { }
public class Service
{
public event EventHandle<CompanyChangedEventArgs> CompanyChanged;
protected void OnCompanyChanged()
=> …Run Code Online (Sandbox Code Playgroud) 更新:我当时遇到的问题是由于VS/Typescript中的错误.此问题现已解决.目前,发生此错误的唯一原因是在Typescript属性中未选择任何模块类型.见接受的答案.
VS 15:asp.net MVC项目.
我添加了一个打字稿文件.然后我将Module系统设置为System.
然后我构建了这个项目.
发生错误:除非提供了--module标志,否则无法编译模块.
然后我检查ts文件的属性.我将构建操作设置为none.错误消失了.
但是,如果我使用带有Greeter类的模板开始一个新的Typescript项目,那么所有工作都按预期工作.
但是我仔细查看了项目设置,并且没有任何差异,我可以看到.
我已经阅读了此错误的所有其他堆栈溢出答案,但没有一个解决了错误.
我找到的唯一解决方法是将"Compile On Save"设置为true,然后将构建操作设置为"None"
我似乎在查找PHP 5.5 msi文件时遇到问题.我仔细查看了PHP站点并下载了我认为的msi文件,但它只是dll.
我找到了多个项目的安装程序(WAMP),但我只需要将我的PHP从5.3.6升级到5.5,而不是安装Apache等.
那么有没有人有5.5 msi的链接?
我需要的版本是非线程安全86(即,对于Windows Server 2008).
格雷格
我正在使用bootstrap 4 beta.
我有一张卡片清单.我希望它们具有固定宽度,但高度将根据内容而变化.
卡的数量可以是1到n.
我想要的效果是从左到右布局卡片直到屏幕空间用完,然后换行到下一行.
我已经尝试了bootstrap 4示例页面上列出的所有不同选项,但它们似乎并没有包装.
我怎样才能做到这一点?
下面的示例显示了它们之间的3个,它们之间有很大的空间.
<div class="card-columns">
<div class="card" style="width: 18rem;">
<img class="card-img-top" data-src="..." alt="Card image cap">
<div class="card-block">
<h4 class="card-title">Card title</h4>
<p class="card-text">This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.</p>
<p class="card-text"><small class="text-muted">Last updated 3 mins ago</small></p>
</div>
</div>
<div class="card"style="width: 18rem;">
<img class="card-img-top" data-src="..." alt="Card image cap">
<div class="card-block">
<h4 class="card-title">Card title</h4>
<p class="card-text">This card has supporting text …Run Code Online (Sandbox Code Playgroud) 这听起来像是一个愚蠢的问题,但Visual Studio似乎并没有让我做这个我在github上一直看到的简单组织.
我从新的空解开始.
然后我想添加一个"src"文件夹,其中包含项目多个项目.如果我右键单击并选择"添加文件夹",则VS会添加一个虚拟文件夹,而不是实际文件夹.
如果我使用Windows资源管理器在所需位置创建一个新文件夹,VS会忽略它并且不允许我"添加到解决方案"
如果我添加一个项目,它会在根目录中添加项目,而不是在所需的文件夹中.
那么,我该如何添加这个文件夹呢?
我正在努力加快代码合同的速度.我喜欢这个概念,但在实践中,我没有看到在许多私有方法上添加Contract.Requires的价值,其中一些只是一行或两行.
我可以在Public方法上看到这一点,但在私有类方法上,它似乎有点过分.
我有这个窗口:
@(Html.Kendo().Window()
.Name("errorWindow")
.Title("")
.Content(@<text>
//Put text here
</text>)
.Draggable() //Enable dragging of the window
.Resizable() //Enable resizing of the window
.Modal(true)
.Visible(false)
)
Run Code Online (Sandbox Code Playgroud)
在客户端转换为此:
jQuery(function(){jQuery("#errorWindow").kendoWindow({"modal":true,"iframe":false,"draggable":true,"pinned":false,"title":"","resizable":true,"content":null,"actions":["Close"]});});
Run Code Online (Sandbox Code Playgroud)
我可以用这个JScript调用它:
function onAjaxFailure(data) {
var window = $("#errorWindow").data("kendoWindow");
window.center().open();
}
Run Code Online (Sandbox Code Playgroud)
但是如何将文本放在窗口中?换句话说,"data"参数将是错误窗口中显示的文本.
asp.net-core ×2
asp.net-mvc ×2
blazor ×2
jquery ×2
.net-core ×1
c# ×1
html ×1
javascript ×1
kendo-ui ×1
kendo-window ×1
php ×1
twitter4j ×1
typescript ×1