嗨我试图创建一个帐户后重定向到一个新的控制器,但由于某种原因代码不起作用.这是我的代码:
[HttpPost]
public ActionResult Register(Register model)
{
if(ModelState.IsValid)
{
try
{
Membership.CreateUser(model.Username, model.Password, model.EMail);
Roles.AddUserToRole(model.Username, "subscriber");
RedirectToAction("AccountCreated" , "Account");
}
catch(Exception ex)
{
ModelState.AddModelError("" , ex.Message);
}
}
else
{
ModelState.AddModelError("" , "One or more fields are not completed");
}
return View(model);
}
public ActionResult AccountCreated()
{
return View();
}
Run Code Online (Sandbox Code Playgroud)
我试过了两个RedirectToAction("AccountCreated" , "Account");,Redirect("~/Account/AccountCreated")但两个都不起作用.调试时我注意到当它到达代码的那一部分时,它会跳过它.
我知道应用程序不会抛出异常,因为它会创建帐户.
这里有什么问题?
我有以下一点代码,它到目前为止工作:
SELECT
[id],
COALESCE ([Company], [LastName] + ', ' + [FirstName]) as Customer
FROM [some_database].[dbo].[some_table]
ORDER BY Customer
Run Code Online (Sandbox Code Playgroud)
但是,我想使用DISTINCT关键字来消除重复的"客户"条目.这可能吗?我尝试了几种不同的方法,但无济于事.
当someCondition为true时,我正在尝试删除将"someText"作为其Text的下拉选项.我不知道它的价值.看起来这应该有效,但事实并非如此.调试时,我看到someID未定义.有谁知道我是否犯了一些小的语法错误?
function toggleSomeOption() {
if (someCondition() == "Foo") {
var someID = $("#myDropDown option[text='someText']").attr('value');
$("#myDropDown option[value='someID']").remove();
}
}
Run Code Online (Sandbox Code Playgroud)
我在这个答案之后设计了我的代码,但它不起作用.
我试图找到一种方法来从同一行中的Linq方法访问以前的值.
我希望能够在Linq中使用这个通用表单:
var values = Enumerable.Range( 1, 100 ).Select( i => i + [last result] );
Run Code Online (Sandbox Code Playgroud)
但是如果没有多行lambda并且将结果存储在其他地方,我找不到这样做的方法.
所以我在Linq能做的最好的斐波纳契总和是:
List<int> calculated = new List<int>( new int[] { 1, 2 });
var fibonacci = Enumerable.Range(2, 10).Select(i =>
{
int result = calculated[i - 2] + calculated[i - 1];
calculated.Add(result);
return result; // and how could I just put the result in fibonacci?
}
);
Run Code Online (Sandbox Code Playgroud)
这看起来很难看.我可以使用常规for循环在较少的代码中执行此操作.
for (int i = 2; i < 10; i++)
{
calculated.Add(calculated[i - 2] + calculated[i - 1]); …Run Code Online (Sandbox Code Playgroud) 我有非常大的rdl报告,大约50列和500,000行.报告后面的SQL过程只是普通的select*from table.执行只需几秒钟.但是,当我想在SSRS中呈现该报告时,它需要太长时间.
最终用户只想在csv中导出该报告.他不需要SSRS来呈现报告.有没有办法将报告的默认呈现模式设置为csv.然后,当用户运行它时,报告会自动要求他保存在.csv中,而不进行渲染?
在 React 中,我尝试将 img src 值设置为从 API 对象列表中检索的 URL。当我只使用一个属性时,它就有效。例子:
return <li key={myObject.id}><img src={myObject.icon.path} alt={myObject.summary} /></li>;
Run Code Online (Sandbox Code Playgroud)
但是,当我想将 2 个或更多属性连接在一起形成 url 时,这将不起作用。它只是将带大括号的实际文本字符渲染为 img src,这会产生损坏的图像。我怎样才能解决这个问题?
return <li key={myObject.id}><img src='{myObject.icon.path}/someConstantText.{myObject.icon.suffix}' alt={myObject.summary} /></li>;
Run Code Online (Sandbox Code Playgroud) 如果我有一个调用的JavaScript方法getSomeStringValue(),有没有办法提取该值并将其用作href链接,如下所示?
(我知道下面的代码并不能正常工作.)
<a href="$:getSomeStringValue()" target="_blank">
My Link
</a>
Run Code Online (Sandbox Code Playgroud) 我在MVC3母版页(_Layout.cshtml)中有以下内容.
<ul id="someMenu">
<li><a href="http://someURL"> someText </a></li>
<li><a href="http://someURL"> someText </a></li>
<li><a href="http://someURL"> someText </a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
我尝试通过这样做在链接之间添加间隔图像:
<ul id="someMenu">
<li><a href="http://someURL"> someText </a>
<img src="http://someSpacer.gif" />
</li>
<li><a href="http://someURL"> someText </a>
<img src="http://someSpacer.gif" />
</li>
<li><a href="http://someURL"> someText </a>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
但是这没有正确显示,而且我觉得我违反DRY一遍又一遍地输入该图像URL(我的实际网页有几个这些li元素,而不仅仅是3个).它在li的一部分上显示了间隔图像,但我希望它出现在 li元素之间.不,我无法在li控件之间放置img控件; 这不被允许.
回到web-forms和asp:Menu的时代,你可以指定一次"StaticBottomSeparatorImageUrl",一切都运行得很好.有谁知道如何在MVC3中实现这一目标?
我目前正在使用SQLite的实体框架.我目前正在插入带有ID的实体(由SQLite自动生成,但它不是自动增量的.请参阅此内容).该字段标记为StoreGeneratedPattern = "Identity".edmx.
我想在表中插入实体并能够指定ID(因此数据库不必生成一个).
我在我的javascript中有以下电子邮件验证器,但@在MVC3中被误解了:
function validateEmail(emailAddress) {
var emailPattern = "/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/";
return emailPattern.test(emailAddress);
}
Run Code Online (Sandbox Code Playgroud)
有没有解决的办法?我尝试使用斜杠来逃避at符号,但这不起作用.
我定义了以下DropDownList:
<asp:DropDownList ID="ddlStuff" CssClass="myCssClass" OnSelectedIndexChanged="PopulateAnotherDropdown" runat="server"></asp:DropDownList>
Run Code Online (Sandbox Code Playgroud)
但是,我的PopulateAnotherDropdown方法没有触发.我在方法上设置了断点,但它没有被击中.
这是我在代码隐藏中编写的方法:
public void PopulateAnotherDropdown(object sender, EventArgs e)
{
...
}
Run Code Online (Sandbox Code Playgroud)
对于它的价值,页面呈现如下:
<select name="ctl00$MainContent$ddlStuff" id="MainContent_ddlStuff" class="myCssClass">
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
c# ×3
asp.net-mvc ×2
html ×2
javascript ×2
razor ×2
.net ×1
asp.net ×1
coalesce ×1
code-behind ×1
css ×1
csv ×1
distinct ×1
html-lists ×1
image ×1
jquery-ui ×1
linq ×1
reactjs ×1
sql ×1
sql-server ×1
sqlite ×1