草庐IT

up-navigation

全部标签

c# - 引用滥用 : Worth Cleaning Up?

我继承了一些广泛且不必要地使用ref关键字的代码。最初的开发人员显然担心如果不使用ref对象会像原始类型一样被克隆,并且在编写50k+行代码之前没有费心去研究这个问题。这与其他不良编码实践相结合,造成了一些表面上非常危险的情况。例如:Customerperson=NextInLine();//personisAliceperson.DataBackend.ChangeAddress(refperson,newAddress);//personcouldnowbeBob,Eve,ornull您能想象走进一家商店更改地址,然后以完全不同的方式走出去吗?可怕,但在实践中在此应用程序中使用re

c# - ASP.NET Core 2.0 预览版 1 : How to set up Cookie Authentication with custom login path

在ASP.NETCore2.0中,.UseAuthentication()中间件有一个重大更改,不再允许oldsyntaxmentionedhere去工作。新版本似乎在addAuthentication中处理配置,但我无法在任何地方找到任何关于如何更改指定自定义登录和注销url的旧代码的详细信息。services.AddAuthentication(o=>{//WherecanIspecifythis?????varopt=newCookieAuthenticationOptions(){LoginPath="/api/login",LogoutPath="/api/logout",}

c# - 在 MVVMCross 中将对象传递到 "navigated to" View 模型的最佳方法是什么?

我有一个ViewModel,其中包含一个Team,该Team具有一个Players属性,该属性是Player对象的列表。在TeamView中,团队是深度加载的,因此玩家数据已经在内存中。将给定的选定Player类实例传递给PlayerView的最佳方法是什么?问题是MVVMCrossViewModel构造函数在当前版本中只能包含字符串属性。我有以下想法:传递所选玩家的ID,并将Team.Players属性作为ViewModel分配给PlayerView。如果所选玩家只是PlayerView中的焦点玩家并且PlayerView实际上是一个“玩家”View,用户也可以在其他团队玩家之间滑动

c# - OData 和 WebAPI : Navigation property not present on model

我正在尝试使用EntityFramework、WebAPI、OData和Angular客户端组合一个简单的玩具项目。一切正常,除了我在其中一个模型上放置的导航属性似乎不起作用。当我使用$expand调用我的API时,返回的实体没有它们的导航属性。我的类是Dog和Owner,看起来像这样:publicclassDog{//Properties[Key]publicGuidId{get;set;}publicStringName{get;set;}[Required]publicDogBreedBreed{get;set;}publicintAge{get;set;}publicintWe

c# - IOC : Wiring up dependencies on event handlers

我正在构建一个WinForms应用程序,其UI仅包含NotifyIcon及其动态填充的ContextMenuStrip。有一个MainForm将应用程序保存在一起,但它永远不可见。我开始尽可能可靠地构建它(使用Autofac处理对象图)并且对我的成功非常满意,即使与O部分也相处得很好。通过我目前正在实现的扩展,我似乎发现了我的设计中的一个缺陷,需要稍微改造一下;我想知道我需要走的路,但对于如何准确定义依赖关系有点不清楚。如上所述,菜单在启动应用程序后部分动态填充。为此,我定义了一个IToolStripPopulator接口(interface):publicinterfaceITool

c# - DI Framework : how to avoid continually passing injected dependencies up the chain, 且未使用服务定位器(特别是使用 Ninject)

我需要更多帮助才能“了解”像Ninject这样的DI框架如何超越基础知识。以Ninject为例:classSamurai{privateIWeapon_weapon;[Inject]publicSamurai(IWeaponweapon){_weapon=weapon;}publicvoidAttack(stringtarget){_weapon.Hit(target);}}如果没有DI框架(即上面的[Inject]引用),引用类将类似于:classProgram{publicstaticvoidMain(){Samuraiwarrior1=newSamurai(newShuriken

c# - 装箱和拆箱 : when does it come up?

所以我明白了什么是装箱和拆箱。它什么时候出现在现实世界的代码中,或者在什么例子中它是一个问题?我无法想象做这样的事情:inti=123;objecto=i;//Boxingintj=(int)o;//Unboxing...但这几乎可以肯定是过于简单化了,我什至可能在不知不觉中进行了装箱/拆箱。 最佳答案 与泛型之前相比,现在问题不大了。现在,例如,我们可以使用:Listx=newList();x.Add(10);inty=x[0];根本不需要装箱或拆箱。以前,我们有:ArrayListx=newArrayList();x.Add(1

c# - .NET C# : WebBrowser control Navigate() does not load targeted URL

我正在尝试通过WebBrowser控件以编程方式加载网页,目的是测试页面及其JavaScript函数。基本上,我想将通过此控件运行的HTML和JavaScript与已知输出进行比较,以确定是否存在问题。但是,我在简单地创建和导航WebBrowser控件时遇到了麻烦。下面的代码旨在将HtmlDocument加载到WebBrowser.Document属性中:WebBrowserwb=newWebBrowser();wb.AllowNavigation=true;wb.Navigate("http://www.google.com/");在Navigate()运行后通过Intellisen

c# - EF4 代码优先 : how to add a relationship without adding a navigation property

我应该如何在不使用任何导航属性的情况下使用CodeFirst来定义关系?之前,我通过在关系的两端使用导航属性来定义一对多和多对多。并在数据库中创建适当的关系。这是类外观的精简版本(为简单起见,我已将多对多关系转换为一对多)。publicclassUser{publicstringUserId{get;set;}publicstringPasswordHash{get;set;}publicboolIsDisabled{get;set;}publicDateTimeAccessExpiryDate{get;set;}publicboolMustChangePassword{get;set

c# - EF4.1 代码优先 : How to disable delete cascade for a relationship without navigation property in dependent entity

假设我有这两个非常基本的实体:publicclassParentEntity{publicintId;publicvirtualICollectionChildrens;}publicclassChildEntity{publicintId;publicintParentEntityId;//ForeignKeypublicvirtualParentEntityparent;//[NOTWANTED]}出于某些原因,我不希望ChildEntity保留对其父项的引用。我只希望它保留ParentEntityid但仅此而已。到目前为止,没问题,我只是删除了[NOTWANTED]行,一切都按预