- 博客(10)
- 收藏
- 关注
转载 Asp.Net 5使用第三方容器
这几天在学习Asp.Net 5,现在文档以及博客之类的资料实在太少了,不看源码几乎举步维艰,好在全都是开源的,看看微软的代码也获益良多。看到DependencyInjection的代码里除了默认的容器之外,还提供了对NInject, Castle, Unity, AutoFac等第三方IoC容器的支持,但看了半天愣是没找到怎么使用。连翻代码带查资料,好不容易才搞明白了。在Micros...
2019-10-01 08:44:11
196
转载 Prism之Region(2)
在Prism之Region(1)中,介绍了一些Prism中页面组织以及切换的方式。这一篇将以一个很简单的示例程序来实践一下。源码下载下面是效果图:先说Log,Prism内置了ILogFacade接口,在Prism提供的QuickStart项目里的Modularity中,有一个CallbackLogger,这里我们直接拿过来使用。然后在PrismRegionShell中放一...
2019-10-01 08:44:09
414
转载 Prism之Module
Prism的核心功能之一就是支持模块化应用程序开发(Modular Application Development),并且在运行时对各个模块进行动态管理。使用Prism进行模块化开发首先要了解几个概念:1.Module: Module是一些逻辑上相关的程序集或者资源文件的集合,在Silverlight程序中通常以xap文件为单位存在。而每一个Module中都需要有一个负责进行初始...
2019-10-01 08:44:06
892
转载 Prism之Bootstrapper
在程序中使用框架必然要有一个切入点,框架会在这里进行初始化,处理相关配置信息等。在Prism中扮演这一角色的就是Bootstrapper。 Prism提供了一个抽象基类Bootstrapper,这个类里面包含了包含了许多空的虚方法,可以重写它们添加自己的逻辑。这个基类与任何容器无关,所以可以通过继承它来实现基于特定容器的Bootstrapper,不过通常我们大...
2019-10-01 08:44:04
826
转载 Asp.Net 5使用Area及自定义Area
Asp.Net Mvc里有一个叫做Area的技术,就是可以把不同逻辑组件的controller, view等放到不同的文件夹里。比如所有管理相关的都放到Admin area里。其实之前我一直对这个功能不太感冒,并不觉得能解决什么大问题,如果项目规模较大的话,肯定是很多开发协同开发,这时候很大的一个问题是版本库冲突的问题以及一个模块build不过导致其他模块受难。我觉得area并不能解决这...
2019-10-01 08:44:03
677
转载 Silverlight实现DataGrid的Select All功能
今天要实现一个DataGrid的Select All功能。查了一下,多是用EventHandler完成的,看起来觉得有点乱,所以自己写了一个。代码很简单Xaml 1 <UserControl x:Class="SilverlightApp.SelectAllAndOrder.SelectAllPage" 2 xmlns="http...
2019-10-01 08:44:02
201
转载 Prism之使用EventAggregation进行模块间通信
在开发Silverlight程序的时候,经常需要在不同的组件间进行通信。比如点击一个button,可能就需要改变另一个控件的内容。比较直接的办法是使用事件,当然使用MVVM的时候也可以使用command,还可以定义一些全局的变量来保存一些信息等。Prism提供了几种用于组件间通信的途径,可以使用RegionContext使不同的视图共享数据,也可以借助于容器的力量来使用共享的serv...
2019-10-01 08:44:01
713
转载 Prism之Region(1)
Prism可以帮助我们开发模块化程序,将程序分割成一个个独立的Module,分别进行开发。然后在程序运行的时候,将各个Module组合到一起,为程序提供各种各样的功能。通常来说,Module是一些视图和功能的集合,那么就需要一种办法来将这些视图以某种形式,在特定的时间展现出来。Prism通过Shell + Region来组织视图的布局,完成视图间的转换等。如上图所示,...
2019-10-01 08:44:00
752
转载 Prism简介
Prism是由微软Patterns & Practices团队开发的项目,目的在于帮助开发人员构建松散耦合的、更灵活、更易于维护并且更易于测试的WPF应用或是Silverlight应用以及Windows Phone 7应用。使用Prism可以使程序开发更趋于模块化,整个项目将由多个离散的、松耦合的模块组成,而各个模块又可以又不同的开发者或团队进行开发、测试和部署。目前Prism的...
2019-10-01 08:43:58
453
转载 关于==运算符重载
今天在写代码的时候遇到这样一个问题:自定义了一个类,为了在对两个实例比较时方便,所以重载了==运算符,当然也同样重载了!=运算符。在测试的时候却出现了stack overflow的问题。 代码如下(当然不是真正的代码,但是能说明问题):public class Dog { private string name; public Dog(st...
2019-10-01 08:43:56
1230
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人