小编Rec*_*ipe的帖子

C#ASP.Net MVC:RedirectFromLoginPage始终转到默认URL,而不是returnurl

我有一个带会员登录的MVC4应用程序(通过FormsAuthentication).

这在web.config中定义如下.我的默认网址是home root(〜/):

<roleManager enabled="true" />
<authentication mode="Forms">
  <forms defaultUrl="~" loginUrl="~/Account" />
</authentication>
Run Code Online (Sandbox Code Playgroud)

在Login post方法的AccountController中,以下代码是相关的.当用户使用有效凭据单击登录时,将执行此代码.

if (Membership.ValidateUser(creds.Username, creds.Password))
{
    FormsAuthentication.RedirectFromLoginPage(creds.Username, false);
    return null;
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我(匿名)导航到:〜/ Admin,我会被重定向到〜/ Account登录,这是完美的.我可以看到网址形成如下:

http://localhost:23759/Account?ReturnUrl=%2fAdmin
Run Code Online (Sandbox Code Playgroud)

但是,当我成功登录时,我被重定向到家(〜/)而不是〜/ Admin

请帮忙!非常感谢!

编辑:发现实际问题:这是post方法没有收到查询字符串

c# asp.net forms-authentication asp.net-mvc-4

9
推荐指数
1
解决办法
1万
查看次数

Task.WaitAll()没有按预期工作

我正在试图弄清楚如何使用Task类.在过去我总是使用常规的Thread类,但我正在尝试掌握所有的异步编程......

作为一个例子,我创建了一个包含所有代码的主Winforms应用程序.我的问题的相关代码是:

//Relevant delegates
public delegate void MethodAction(int num);
public delegate void MethodConversion();
public delegate void OnCompletionAction(string completiontext);

//Button user presses
private void button4_Click(object sender, EventArgs e)
{
    richTextBox1.Clear();
    sw.Reset();
    sw.Start();
    Sync.RunAsync3(calcSim);
}

//The method that simulates a calculation by adding a sleep
//the input param threadlength is just to allow threads to take longer than others
//since I'm multithreading, I have to invoke the writing code on the windows RichTextbox control
private void calcSim(int threadlength)
{
    string threadname = …
Run Code Online (Sandbox Code Playgroud)

c# multithreading task winforms async-await

6
推荐指数
1
解决办法
2万
查看次数

C#Excel interop:来自HRESULT的异常(DISP_E_BADINDEX)

我正在尝试部署一个在我的开发PC和其他工作站上运行良好的应用程序.但是,有些用户会收到我似乎无法掌握的错误.

该程序是一个带有Excel.Interop功能的C#dotNet应用程序(Office 2003).

我似乎遇到了'索引'的问题.奇怪的是,这部分在某些机器上运行完美,但在其他机器上引发了致命的例外......所有机器都是带有Office 2003的Windows 7.

这是相关代码:

//Change sheet code (index is 1, 2, 3) -> errors at #2
public void ChangeWorksheet(int sheetIndex)
{
    if (_OnXLSEvent != null) _OnXLSEvent(string.Format("TEMP: working on page {0}", sheetIndex));
    _WS = _WSs[sheetIndex];
    _Shapes = _WS.Shapes;
    _PageSetup = _WS.PageSetup;
    if (_OnXLSEvent != null) _OnXLSEvent(string.Format("TEMP: working on page {0}", _WS.Name));
}

//Constructor (_App and _WBs are static)
public ExcelProcessor(bool SaveAutomatically = false, string SavePath = "")
{
    if (_App == null)
        _App = new XLS.Application();
    if (_WBs …
Run Code Online (Sandbox Code Playgroud)

c# indexing excel interop

5
推荐指数
1
解决办法
1万
查看次数

Linq to Entity Framework:仅选择子元素的子集

以下设置为真:

  • A是父类
  • A有一到多个B.
  • A有一个到多个C.

  • B有一到多个X.

  • C有一到多个X.

  • X有一个名为EndDate的属性:这是过滤条件

我想检索一个具有A,B,C和X(ABX和ACX)的集合我想过滤该集合,只返回具有的元素X.EndDate = Date.

希望X的元素没有通过这个标准.这可以在一个Select中完成吗?

我正在尝试以下代码:

var set = _context.Set<A>()
    .Include("B.X")
    .Include("C.X")
    .Where(a => a.B.Any(b => b.X.Any(x => x.EndDate == date)) ||
                a.C.Any(c => c.X.Any(x => x.EndDate == date)))
    .ToList();
Run Code Online (Sandbox Code Playgroud)

但是,当B.X在过滤条件中时,它也将包括CX当B.X(X可以很多)中的一个符合条件时,它将返回所有B.X实体

我尽力举一个例子:

A           B           X       X.EndDate
A1          B1          BX1     2015-01-01
A1          B1          BX2     2015-01-02
A1          B2          BX3     2015-01-09

A           C           X       X.EndDate
A1          C1          CX1     2015-01-03
A1          C1          CX2     2015-01-03
A1          C2          CX3     2015-01-02 …
Run Code Online (Sandbox Code Playgroud)

.net c# linq entity-framework

5
推荐指数
1
解决办法
4815
查看次数

将大型集合保存到存储时,Redux 似乎很慢

简化情况:

我正在开发一个实时应用程序,需要将大约 650 个对象作为数组保存到Redux store.

该应用程序拥有 ReactJs - Redux - ImmutableJs - Reselect 技术堆栈。但我发现实际将数据保存到 Redux 存储中的速度会变慢。

使用 ImmutableJs 是无关紧要的。我已经创建了使用和不使用这个框架的 POC,并且性能没有改变。

以下代码是我的SearchReducer

const searchReducer = (state = fromJS(defaultState), action) => {
  switch(action.type) {
    case SEARCHMUSICIAN:      
      const { searchTerm, results } = action.payload;

      return state.set('searchTerm', searchTerm)
                  .set('foundMusicians', fromJS(results));

    default:
      return state;
  }
};
Run Code Online (Sandbox Code Playgroud)

什么可以解释经济放缓?对于更大的集合或同时处理大量数据,Redux 实际上会很慢吗?我是否缺少可以提高 Redux 性能的标志或配置?

没有 Immutable 的性能示例 Immutable 的性能示例

javascript reactjs redux react-redux

5
推荐指数
1
解决办法
3484
查看次数

.NET EPPlus OpenXml - 在每个页面上重复Excel行

我正在尝试在每个Excel页面上维护一行(标题字段).我正在使用EPPlus库中包含的OpenXML.

我试过以下代码行:

myWorkSheet.PrinterSettings.RepeatRows = New ExcelAddress(String.Format("${0}:${0}", firstRowNummerExcel.ToString()))
Run Code Online (Sandbox Code Playgroud)

这不是错误或崩溃我,但只是没有做任何特别的事情......

PrinterSettings对象似乎有效,因为执行以下代码行有效:

worksheetVertrokkenRunderen.PrinterSettings.ShowHeaders = true
Run Code Online (Sandbox Code Playgroud)

这让我觉得插入的ExcelAddress可能不正确?

.net vb.net excel openxml epplus

4
推荐指数
1
解决办法
3177
查看次数

循环中的变量声明不会重置为默认值

考虑以下代码:

for (int i = 0; i < 10; i++)
{
    bool b;          /* #1 */
    if (i == 0)
    {
        b = true;    /* #2 */
    }
}
Run Code Online (Sandbox Code Playgroud)

我在#1#2设置了断点.

在第一时间(I = 0),b设定为false在#1在#2设置为真.

第二次(i = 1),b在#1处为真.

这对我来说没有意义,因为我假设当在第二个循环(i = 1)中开始时,b在声明时应该再次为假.

我假设在第二个循环中#1处的b = false.

有人在乎解释吗?

c# compiler-construction loops declaration

1
推荐指数
1
解决办法
1073
查看次数