草庐IT

VAR_LOCALE_USER_DEFAULT

全部标签

c# - User.IsInRole() 在角色分配后不工作,但在重新登录后工作

在ASP.NETMVC5应用程序中,我使用Unity容器创建OWIN/Identity对象并解析所有依赖项。问题是当我注册为新用户并给他分配这样的角色时userManager.AddToRole(user.Id,"NewUser");...awaituserManager.UpdateAsync(user);它实际上在AspNetUserRoles表中创建了一条记录,但在那之后如果我用User.IsInRole("NewUser")检查他的角色我得到的是假的,除非我注销然后重新登录,否则它是真的。我猜问题可能出在Unity上下文中的身份对象(UserManager、RoleManage

c# - 有什么办法可以规避 "Dialogs must be user-initiated"异常?

我的应用有一个“打开文件”按钮。在启动OpenFileDialog之前,它会询问用户是否要保存当前文件,如果需要,它会启动SaveFileDialog。然后启动OpenFileDialog。非常标准的东西。我的问题是silverlight然后将OpenFileDialog.ShowDialog()方法视为不是用户启动的,并且我得到了一个SecurityException。是否有任何已知的合理方法来避免此异常?这肯定是一个非常标准的场景?应用在浏览器中。欢迎任何想法编辑:抱歉,不允许发布实际代码:(虽然逻辑非常简单:在伪代码中,“OpenFile”按钮按下事件调用如下方法:*启动一条新的

c# - 如何通过 ConfigurationManager 写入 User.Config 文件?

我正在尝试使用ConfigurationManager将用户设置保存到配置文件中。我只想将这些设置限定为用户,因为在没有管理员权限的情况下无法在Vista/Win7上保存应用程序更改。这似乎让我得到了用户的配置,它似乎保存在Win7中([Drive]:\Users\[Username]\AppData\Local\[ApplicationName]\[AssemblyName][hash]\[Version\)Configurationconfig=ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerU

c# - 有没有像 "user-defined encoding fallback"这样的东西

当使用ASCII编码并将字符串编码为字节时,ö之类的字符将生成?。Encodingencoding=Encoding.GetEncoding("us-ascii");//orEncodingencoding=Encoding.ASCI;data=encoding.GetBytes(s);我正在寻找一种方法来用不同的字符替换这些字符,而不仅仅是问号。示例:ä->aeö->oeü->ueß->ss如果无法用多个字符替换一个字符,如果我能用一个字符替换它们,我会接受(ö->o)现在有几种EncoderFallback的实现,但是我不明白它们是如何工作的。一个快速而肮脏的解决方案是在将字符串提

c# - 统一: Change default lifetime manager for implicit registrations and/or disable them

Unity容器将自动解析它可以自行识别的任何类型,无需手动注册。这在某些方面很好,但我遇到的问题是它使用TransientLifetimeManager来解决这种类型的问题,而我几乎总是想要一个ContainerControlledLifetimeManager。当然,我仍然可以手动将我的类型注册为单例,但如果我忘记了,应用程序将成功启动,而不是在启动时出现未处理的异常,并且一切似乎都正常工作。但最终会出现错误,可能非常微妙,难以诊断,因为存在一个类型的多个实例,这意味着是一个单例。所以我的问题是:有没有一种方法可以指定不同的默认生命周期管理器或完全禁用默认的自动解析行为并将容器限制为

c# - C# 中的 var - 为什么它不能用作成员变量?

这个问题在这里已经有了答案:Implicittyping;whyjustlocalvariables?(6个答案)关闭8年前。为什么在C#中不能在类级别拥有隐式类型的变量,因为当这些变量被立即赋值时?即:publicclassTheClass{privatevaraList=newList();}这只是尚未实现的事情,还是存在未实现的概念/技术原因?

c# - 当 new-able 使用 new T(),否则使用 default(T)

我正在研究C#泛型函数。错误时,如果泛型类型可以是new-able,返回newT(),否则返回default(T)。代码如下:privateTFunc(){try{//trytodosomething...}catch(Exceptionexception){if(Tisnew-able)//我知道对于那些使用newT()的人来说,它需要whereT:new()。这个问题是,如何在运行时判断这个? 最佳答案 您只需要检查该类型是否具有无参数构造函数。您可以通过以空类型作为参数调用Type.GetConstructor方法来实现。va

c# - 编译器错误 "Default parameter specifiers are not permitted"

下面是我的代码。publicclassPItem{publicStringcontent;publicintcount;publicintfee;publicintamount;publicstringdescription;//DefaultvaluespublicPItem(String_content="",int_count=0,int_fee=0,string_description="",int_amount=0){content=_content;count=_count这是在一个类里面。当我尝试运行程序时出现此错误:Defaultparameterspecifiersa

c# - var 关键字并不总是有效?

C#,VS2010。有人,请解释为什么我不能在下面的代码中使用var!varprops=TypeDescriptor.GetProperties(adapter);//errorCS1061:'object'doesnotcontainadefinitionfor'DisplayName'foreach(varpropinprops){stringname=prop.DisplayName;}//Noerrorforeach(PropertyDescriptorpropinprops){stringname=prop.DisplayName;}TypeDescriptor.GetPro

c# - 与 C# 中的显式类型相比,使用 var 有什么优势?

这个问题在这里已经有了答案:关闭12年前。PossibleDuplicates:What’sthepointofthevarkeyword?UseofvarkeywordinC#我了解如何IEnumerable对于数据类型可能会使代码的可读性降低一点,或者嵌套的泛型看起来有点令人生畏。但是除了代码可读性之外,使用var而不是显式类型还有什么优势吗?似乎通过使用显式类型,您最好传达变量的功能,因为您知道它是什么。如果它是一种工作场所编码标准,我会为了团队合作而使用它。然而,在我自己的项目中,我更愿意避免使用var。