问题列表 - 第12135页

HttpContext.Current.User.IsInRole(roleName)始终返回false

我正在努力为ASP.NET MVC应用程序添加授权,并遇到了障碍.我终于能够将我们的自定义成员资格提供程序连接起来,并为该应用程序进行身份验证.现在,正如预期的那样,如果我将[Authorize]属性添加到我的控制器,则必须对用户进行身份验证才能查看该页面.我还成功测试了[Authorize(Users ="{userName}")],它也可以将页面限制为该特定用户.

问题是[Authorize(Roles ="{RoleName}")]似乎没有像我期望的那样工作.如果我将该属性添加到控制器,只要我尝试访问相应的页面,我就会被重定向到我们的登录页面.如果用户没有所需的角色,这就是我期望发生的事情,但即使用户具有该角色,也会发生这种情况.我在View,Controller和Helper方法中检查了User.IsInRole("{roleName}")和HttpContext.Current.User.IsInRole("{roleName}"),这总是返回'False'.

我已经验证我正在使用的用户具有我试图授权的角色.我还在WebForms应用程序中测试了这些用户,这些应用程序限制了相同角色的页面访问,并且工作正常.我认为我在某处设置了错误或者遗漏了一些简单的东西,但是在整个上午搜索之后,我没有找到任何让我更接近解决方案的东西,所以我希望有人可以帮助我.

asp.net-mvc

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

Boost :: bind和std :: copy

我正在尝试使用Boost :: bind和std :: copy来打印列表列表中的值.显然,我可以使用循环,为了清晰起见,我最终可能会这样做,但我仍然想知道我在这里做错了什么.

这是我的代码的提炼版本:

#include <boost/bind.hpp>
#include <iterator>
#include <algorithm>
#include <list>
#include <iostream>
using namespace std;
using namespace boost;

int main(int argc, char **argv){
list<int> a;
a.push_back(1);

list< list<int> > a_list;
a_list.push_back(a);

ostream_iterator<int> int_output(cout,"\n");

for_each(a_list.begin(),a_list.end(),
  bind(copy,
    bind<list<int>::iterator>(&list<int>::begin,_1),
    bind<list<int>::iterator>(&list<int>::end,_1),
    ref(int_output)
  ) //compiler error at this line
);
return 0;
Run Code Online (Sandbox Code Playgroud)

}

编译器错误开始

error: no matching function call to bind(<unresolved overloaded function type> .....
Run Code Online (Sandbox Code Playgroud)

我认为这意味着bind无法弄清楚最外层绑定的返回类型应该是什么.我不怪它,因为我也不能.有任何想法吗?

c++ boost bind

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

有经验的程序员的嵌入式系统项目

我作为嵌入式系统软件工程师工作了5年(更多的CAN和核心级编程,I2C,SPI),我开始研究生课程.目前我是一名应用软件程序员,也很有趣.但是,我对嵌入式系统项目的乐趣和满足感都缺失了.我想开始我可以在家做的项目,以保持我的兴趣.如果您有任何人可以与16位或32位微型开发套件共享有关外围设备的信息,我将不胜感激.或者建议重新开始的好地方.

embedded projects

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

用Ifs重构帮助

我一直在研究这段代码,出于某种原因,所有的if都让我疯狂了,还有一堆重复的代码.有更好的清洁方法吗?

public Program(string[] args)
    {
        try
        {
            WriteToLogFile("Starting ImportTask");
            if (args.Length == 0)
            {
                Import(DateTime.Now,DateTime.Now);
                MarkRecordsAsDeleted();
            }
            else if (args.Length == 1)
            {
                DateTime dateToImport;
                bool isValidDate = DateTime.TryParse(args[0], out dateToImport);
                if (isValidDate)
                {
                    Import(dateToImport,dateToImport);
                    MarkRecordsAsDeleted();
                }
                else
                    WriteToLogFile(String.Format("The Import date specified was invalid. - {0}", args[0]));
            }
            else if (args.Length == 2)
            {
                DateTime importStartDate;
                bool isValidStartDate = DateTime.TryParse(args[0], out importStartDate);
                DateTime importEndDate;
                bool isValidEndDate = DateTime.TryParse(args[0], out importEndDate);
                if (isValidStartDate && isValidEndDate)
                {
                    if (importStartDate > importEndDate)
                    { …
Run Code Online (Sandbox Code Playgroud)

refactoring .net-2.0

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

CSS提示和技巧

我对CSS有一点经验,但是当我遇到像'液体布局'和'人造柱'这样的技术和术语时,我总是感到困惑.我花了相当多的时间阅读有关CSS的文献,但我找不到一个全面的资料来详细说明所有这些提示和技巧(或者某些人喜欢的'黑客').

如果我能够胜任网页设计,我觉得这些提示和技巧非常重要.有人知道这么全面的资源吗?

编辑:谢谢你的帮助.我会仔细阅读每一个并在此列出一份清单供大家参考.

css

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

如何使用在记事本中正确显示的javascript创建新行?

我有一个脚本将表格单元格从浏览器复制到用户的剪贴板中.我遍历每个单元格,当我需要一个新行时,我会使用

text += "\n";
Run Code Online (Sandbox Code Playgroud)

如果我将文本粘贴到excel中,它会正确格式化并填充正确的行,但是如果我粘贴到记事本中,它会显示符号而不是创建新行:

123□□456 789

代替:

123

456

789

还有其他我可以使用的记事本将识别为换行吗?

javascript notepad newline

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

按日期(或任何其他列)对ActiveRecord返回的数组进行排序

如何按created_at日期列对ActiveRecord查询返回的数组进行排序?

执行查询后会发生这种情况.

请不要告诉我在查询中执行此操作,因为我需要在视图中执行此操作.

ruby arrays activerecord ruby-on-rails

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

为什么要在数据库中创建View?

何时以及为什么有人决定他们需要在他们的数据库中创建一个View?为什么不运行正常的存储过程或选择?

sql t-sql database sql-server

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

将反射枚举传递给 method.invoke java

如果您有一个通过反射访问的枚举,您将如何将它的值传递给 method.invoke 调用。

会不会是这样的(为简单起见,显示为静态方法)


    Class enumClazz = Class.forName("mypkg.MyEnum",true,MyClassLoader);
    Class myReflectedClazz = Class.forName("mypkg.MyClass",true,MyClassLoader);
    Field f = enumClazz.getField("MyEnumValue");

    Method m = myReflectedClazz.getMethod("myMethod",enumClazz);
    m.invoke(null,f.get(null));
Run Code Online (Sandbox Code Playgroud)

java reflection methods enums invoke

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

检测点击以显示/隐藏UINavigationBar

我是iPhone开发的新手,并没有做任何有趣的事情.我的视图层次结构如下:

UIView - UIImageView - UIScrollView - CustomView
Run Code Online (Sandbox Code Playgroud)

如何检测用户是否点击了屏幕上的任何位置,以便我可以相应地显示/隐藏导航栏?我不需要在我的CustomView上进行用户交互,但是当用户只想拖动它时,我想忽略UIScrollView上的触摸.

我已经可以使用以下命令以编程方式显示/隐藏我的视图控制器中的导航栏:

[self.navigationController setNavigationBarHidden:YES animated:YES];
Run Code Online (Sandbox Code Playgroud)

提前致谢!

iphone cocoa-touch

8
推荐指数
2
解决办法
9440
查看次数