文章列表
List和string之间的相互转换
- 博客分类:
- C#
我们在开发中经常会用List<string>来保存一组字符串,比如下面这段代码:
List<string> studentNames = new List<string>();
studentNames.Add("John");
studentNames.Add("Mary");
studentNames.Add("Rose");
可是有时候,我们要从中获取一个字符串,字符串的内容就是集合中的内容,但是要用逗号隔开,下面的办法可以实现:
string.Join( ...
Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 INSERT INTO SELECT 表复制语句了。
1.INSERT INTO SELECT语句
语句形式为:Insert into Table2(field1, ...
企业级系统架构的理解
- 博客分类:
- 项目结构
在我们刚开始学习架构的时候,首先会想到分层的概念,分层架构比较经典的是三层架构,那么,什么是三层架构呢?它包括表现层,业务层,数据访问层;而对于一个新手来说,从抽象意义上的三层架构,逻辑上就划分为三 ...
C/S与B/S结构有对比
- 博客分类:
- 项目结构
B/S结构同C/S结构一样,也是一种非常经典的分布式计算结构,在目前企业应用结构之中,都采用这种结构或者这两种结构的衍生结构,这两种结构各有优缺点,CS结构优点是客户操作体验好,而B/S结构部署和维护成本更低。
B/S结构的优点
(1)、具有分布性特点,可以随时随地进行查询、浏览等业务处理。
(2)、业务扩展简单方便,通过增加网页即可增加服务器功能。
(3)、维护简单方便,只需要改变网页,即可实现所有用户的同步更新。
(4)、开发简单,共享性强
B/S 模式的缺点
(1)、个性化特点明显降低,无法实现具有个性化的功能要求。
(2)、操作是以鼠标为最基本的操作方式, ...
开发人员可能听到过"bad smell"这个词,这个词用在软件编码中是什么意思呢? 代码还有smell吗?当然没有,正如计算机病毒,bug等词一样,这只是个形象的说法。这个词在这里的意思是代码实现了需求,但是代码却 ...
项目管理的几个阶段及分工
- 博客分类:
- 项目管理
一、计划阶段(Plan Phase):
1.1、Kickoff Meeting
1.2、明确项目角色(Project Character)
1.3、指定项目计划(Project Plan)
1.4、软硬件的到位
1.5、整理一份项目风险计划(Risk Management Plan)
1.6、针对这一阶段工作进行Review
二、确定阶段(Construct Phase):
2.1、调研方案制定
2.2、需求文档整理
主要产生业务需求说明书、系统需求说明书、系统架构文档
2.3、针对这一阶段的文档Review
三 ...
上一篇写道了SessionManager类,以下是对这个类的使用:
1.为 Session 赋值:
// 通过Session赋值
// 创建对象
MapLayerInfo layer = new MapLayerInfo();
layer.LayerName = "图层一";
layer.MapLayer = new MapLayer();
// 将该对象赋值给Session
Global.Session["layer"] = layer;
// 创建数组对象
string[] Array = { "张三", ...
近期忙于Silverlight项目开发,经过多个Silverlight项目开发,关于数据加载的一些心得,和大家一起分享下,如果哪位朋友有更好的解决方案,也麻烦更享下。
Silverlight项目开发,用户登录成功后需加载一些基础数据,以便登录后对数据的操作,Silverlight 项目和数据交互一般都会选择WCF,这样每次通过异步获取数据,在网络不是很好的情况下,那种烦脑自然而然的就出来了。
采用一种方法来解决这种问题:
1.对一些基础数据的存储,如字典信息,一般很少变化;还有一些基础数据变化频率很小,希望在用户第一次登录时候就加载到本地独立存储中或是我的文档等,以后每次登录 ...
Bing Map 自定义操作类
- 博客分类:
- Silverlight
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows;
using System.Windows.Media;
using Microsoft.Maps.MapControl;
using Microsoft.Maps.MapControl.Core;
using Microsoft.Maps.MapControl.Navigation;
using Microsoft.Maps.MapControl.Overlays;
namespace Custom ...
XML与Object序列化
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml.Serialization;
using System.IO;
using System.Collections;
namespace Serialization
{
public partial class XmlS ...
一、JavaScript获取网站域名信息:
<script type="text/javascript">
document.write(document.domain)
</script>
二、JavaScript获取完整的网址
<script type="text/javascript">
document.write(document.URL)
</script>
上一篇说到《Model的INotifyPropertyChanged接口实现》和在Prism中有《NotificationObject自动实现INotifyPropertyChanged接口》,很好,本文说说ViewModel的这个INotifyPropertyChanged接口可以用来做啥?
举例1:我有个TabControl,里面放了很多View,每个由ViewModel控制,我想是想TabSelectionChanged就打开相应的ViewModel,怎么做?
解答:用ViewModel的INotifyPropertyChanged接口实现,因为TabItem作为一个选择器就 ...
Behavior把一些常用的行为封装成可重复使用的组件(Component),在理想状况下,Designer(设计师)或domain expert(特定领域的专家,例如财会人员、HR人员、或MIS)甚至可以完全不需要具备程序设计的观念,只需要了解基础的事件(Event)观念,就可以顺利的开发出一套系统,若需要实现特定的功能时,可商请
数据验证(Validation)是界面程序的常见需求,例如使用正则表达式验证用户输入的Email地址是否合法,然后在界面给出错误提示信息。在Sivlerlight的MVVM模式中,我们在Model和ViewModel可以做Validation,然后需要把Model和ViewModel的Validation结果和错误信息通知视图(View)。在WPF中,我们使用IDataErrorInfo,在Silverlight4中,建议使用INotifyDataErrorInfo。
IDataErrorInfo
先简单说一下IDataErrorInfo,这个接口实现了简单的数据验证和错误报告功能,只能 ...
在上一篇写了Model的INotifyPropertyChanged接口实现,在Prism中有一个NotificationObject自动实现了这个接口,位于Microsoft.Practices.Prism.ViewModel命名空间下。也就是说,Prism推荐ViewModel继承这个NotificationObject类来自动实现INotifyPropertyChanged接口。看看NotificationObject都有啥:
1 public abstract class NotificationObject : INotifyPropertyChanged
2 {
...