小编Chr*_*Fin的帖子

如何通过string或int获取枚举值

如果我有枚举字符串或枚举int值,我怎么能得到枚举值.例如:如果我有一个枚举如下:

public enum TestEnum
{
    Value1 = 1,
    Value2 = 2,
    Value3 = 3
}
Run Code Online (Sandbox Code Playgroud)

在一些字符串变量中,我的值为"value1",如下所示:

string str = "Value1" 
Run Code Online (Sandbox Code Playgroud)

或者在某个int变量中,我的值为2

int a = 2;
Run Code Online (Sandbox Code Playgroud)

我如何获得枚举的实例?我想要一个泛型方法,我可以提供枚举和我的输入字符串或int值来获取枚举实例.

c# enums

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

检测32位或64位Windows

我想检测当前的Windows操作系统是32位还是64位.如何使用C++实现它?我不想要处理器类型我想要OS的位类型.这是因为您可以在64位处理器上安装32位操作系统.

c++ windows 32bit-64bit

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

自定义授权属性在WebAPI中不起作用

 public class CustomAuthorizeAttribute : AuthorizationFilterAttribute
 {  
    protected override bool AuthorizeCore(HttpContextBase httpContext)
    {
       return true;// if my current user is authorised
    }
 }
Run Code Online (Sandbox Code Playgroud)

上面是我的CustomAuthorizeAttribute类和

[CustomAuthorize] // both [CustomAuthorize] and [CustomAuthorizeAttribute ] I tried 
public class ProfileController : ApiController
{
   //My Code..
}
Run Code Online (Sandbox Code Playgroud)

当我打电话的时候

http://localhost:1142/api/Profile 
Run Code Online (Sandbox Code Playgroud)

它没有开火 CustomAuthorizeAttribute

我的FilterConfig类的内容如下所示

public class FilterConfig
{
    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {            
        filters.Add(new CustomAuthorizeAttribute());
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我错过了什么,请帮忙.

c# asp.net-mvc authorization filter asp.net-web-api

22
推荐指数
3
解决办法
3万
查看次数

轮询正确的方式?

我是一名软件/硬件工程师,在C和嵌入式技术方面拥有丰富的经验.目前我正在忙着用C#(.NET)编写一些使用硬件进行数据采集的应用程序.现在以下,对我来说,燃烧,问题:

例如:我有一台机器,它有一个用于检测轴最终位置的开关.现在我正在使用USB数据采集模块来读取数据.目前我正在使用Thread来连续读取端口状态.

此设备上没有中断功能.

我的问题:这是正确的方法吗?我应该使用计时器,线程还是任务?我知道民意调查是你们大多数人"讨厌"的事情,但欢迎任何建议!

c# hardware multithreading task polling

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

使用控制器的Hub方法?

我正在使用SignalR 2,我无法弄清楚如何使用我的Hub方法,例如在控制器动作中.

我知道我可以做到以下几点:

var hub = GlobalHost.ConnectionManager.GetHubContext<T>();
hub.Clients.All.clientSideMethod(param);
Run Code Online (Sandbox Code Playgroud)

但是直接在客户端执行该方法.

如果我的服务器端ClientSideMethod(param)方法中有业务逻辑,我想从我的控制器调用,就像从客户端调用它一样?

目前我public static void ClientSideMethod(param)在我的集线器中使用,在那个方法中我使用了IHubContext来自ConnectionManager.

这样做有没有更好的方法?

以下是行不通的(在SignalR 2中?):

var hubManager = new DefaultHubManager(GlobalHost.DependencyResolver);
instance = hubManager.ResolveHub(typeof(T).Name) as T;
instance.ClientSideMethod(param);
Run Code Online (Sandbox Code Playgroud)

在访问客户端时,我得到"不通过Hub管道创建的集线器不受支持"异常.

asp.net asp.net-mvc signalr signalr-hub

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

C#中的PHP var_dump转储数组或对象?

我需要转储数组或对象的内容,我很想知道在C#中我们是否有类似PHP指令的东西var_dump.

目标是不构建循环来使用数组或对象的每个属性或内容并使用Console.WriteLine.

c#

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

从控制台读取一行中的数字,用空格分隔

我有一个任务是在一行中读取给定的数字,用控制台的空格分隔.

当我在一个单独的行上读取每个数字时我知道怎么做(Console.ReadLine()但是当数字在同一行时我需要帮助.

c# numbers console-input

11
推荐指数
3
解决办法
3万
查看次数

如何在用户注册期间添加声明

我正在使用带有身份2.1.0和VS2013 U4的ASP.NET MVC 5项目.我想在注册期间向用户添加声明,以便存储在db中.这些声明代表用户自定义属性.
当我为管理员创建一个用于创建/编辑/删除用户的网页时,我仍然使用create method AccountController来创建用户,但我不想登录该用户.如何将这些声明添加到用户?

c# asp.net-mvc asp.net-mvc-5 asp.net-identity-2

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

有没有办法将OwinRequest转换为HttpRequestBase?

我正在编写一个Owin Middleware,我需要使用一些遗留代码,它使用HttpRequestBase作为方法参数.遗留代码不遵循SOLID所以不可能把它扩大到使用OwinRequest代替HttpRequestBase的

是否有将OwinRequest转换为HttpRequestBase的扩展(或方法)?

c# owin

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

自定义电子邮件确认令

我正在使用Identity 2.0框架进行用户管理.
不幸的是,在我的用例中,使用直接链接无法完成帐户激活/密码重置,因此用户必须从他的电子邮件中复制代码并将其粘贴到网站中.

UserManager默认GenerateEmailConfirmationTokenAsync方法生成的代码非常长,它跨越大约3行文本.我试图覆盖此方法,生成更加用户友好的更短代码.这不起作用,因为该ConfirmEmailAsync方法总是返回"无效令牌"(此方法根本不调用该GenerateEmailConfirmationTokenAsync方法).

我不知道如何存储确认代码,我更喜欢使用Identity Framework的默认存储机制,而不是手动将其存储在数据库中.

由于Identity 2.0框架是封闭源代码,我不知道如何继续.是否可以生成自定义(更短)的确认码以及除了我已经做过的事情之外我应该覆盖哪些方法?

c# asp.net asp.net-identity-2

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