Wintle·旧居

个人blog移至:http://www.wintle.cn,欢迎光临。
posts - 27, comments - 148, trackbacks - 3, articles - 0
  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理

置顶随笔

很久没有来坛里子转了,现在我所在的部门要招需求分析师(阿里巴巴,b2b,国际站),有兴趣的朋友可以联系我。

二类人我们都欢迎:有技术背景,对商业很有感觉的人;有商业背景,对技术非常喜欢的人。

需求分析师做的事情,就是连接商业和技术,讨论商业可行性、把握技术可行性,细化需求,评估成本,输出用例,指导开发(部分参与设计),验收成果。

同时在我们这边,需求分析师经常会担任PM角色。

我们希望需求分析师有一些共同的特点:乐观、冷静、敏锐、细致、善于沟通。

在b2b的工作很忙很开心,我们有虚拟团队,有RA委员会,每个RA在工作的同时,有一定的时间静下来,讨论问题,学习进步。

有兴趣的同学,可以联系我:liwen.xielw@alibaba-inc.com

 

posted @ 2009-02-26 12:07 Wintle 阅读(139) | 评论 (2)编辑

2009年2月26日

很久没有来坛里子转了,现在我所在的部门要招需求分析师(阿里巴巴,b2b,国际站),有兴趣的朋友可以联系我。

二类人我们都欢迎:有技术背景,对商业很有感觉的人;有商业背景,对技术非常喜欢的人。

需求分析师做的事情,就是连接商业和技术,讨论商业可行性、把握技术可行性,细化需求,评估成本,输出用例,指导开发(部分参与设计),验收成果。

同时在我们这边,需求分析师经常会担任PM角色。

我们希望需求分析师有一些共同的特点:乐观、冷静、敏锐、细致、善于沟通。

在b2b的工作很忙很开心,我们有虚拟团队,有RA委员会,每个RA在工作的同时,有一定的时间静下来,讨论问题,学习进步。

有兴趣的同学,可以联系我:liwen.xielw@alibaba-inc.com

 

posted @ 2009-02-26 12:07 Wintle 阅读(139) | 评论 (2)编辑

2006年8月26日

一、CodePlus V2.0
      1、CodePlusV2.0标准版 http://www.cnblogs.com/Files/wintle/CodePlusV2.rar
      2、DatabaseCSV2.0.rar  http://www.cnblogs.com/Files/wintle/DatabaseCSV2.0.rar

二、DBCompare V1 (Ms SQL数据库结构比较) http://www.cnblogs.com/Files/wintle/DBCompare.rar

三、Contact.Net联系人管理 http://www.cnblogs.com/Files/wintle/Contact.Net.rar

四、日志EasyLog http://www.cnblogs.com/Files/wintle/EasyLog.rar

posted @ 2006-08-26 15:09 Wintle 阅读(126) | 评论 (1)编辑

2006年3月9日

由于www.wintle.cn开通了,我的blog现在主要在那里写了。
当然那是一个纯粹的个人blog了,不再是以技术为主。
有关技术的内容,我还是会发到这里来:)

posted @ 2006-03-09 11:34 Wintle 阅读(80) | 评论 (0)编辑

2006年1月6日


CodePlus.Net已经备案成功。

posted @ 2006-01-06 19:11 Wintle 阅读(396) | 评论 (0)编辑

2005年12月26日


之有没有备案,所以现在是强制备案了。hoho..

已经提交了申请...等待审核中。

CodePlusV2.0下载地址:http://www.cnblogs.com/Files/wintle/CodePlusV2.rar

如有使用疑问请各位暂时在这里留言吧。

posted @ 2005-12-26 12:16 Wintle 阅读(159) | 评论 (1)编辑

2005年11月22日


已经测试通过。

使用前,请自行修改 codeplus.exe.config 文件中
  <Database DatabaseType="Oracle" Name="OracleLocal" ConnectionString="Data Source=orcl;user=kyz;password=kyz" DatabaseName="orcl" Selected="False"></Database>

的 ConnectionString为你的连接字符串 DatabaseName为你的databaseName

即可。

其实 Selected 如果=True,则启动codeplus时自动连接该数据库,否则可在codeplus启动后,手工连接。

posted @ 2005-11-22 01:04 Wintle 阅读(414) | 评论 (0)编辑

2005年11月20日

各位朋友:

     由于一些客观原因,CodePlusV2.0正式版未能按时推出,并一再推迟,实在感觉对不起所有支持CodePlus的朋友。现决定,在正式版未推出之前,暂时提供一个无字段数量限制的版本给大家使用,请大家见谅。
 
     期间,我收到非常多热心的朋友来信,提出了很多宝贵的建议,由于时间紧,请恕我不能一一回复,但你们的心意和心情,我很感激,也很理解。所以我先提供一个免费的无限制版本出来给你们,希望CodePlus能给你们的工作带来一些便利,这就是我最大的心愿了。

下载地址: http://www.cnblogs.com/Files/wintle/CodePlusV2.rar

同时,我也希望大家能对CodePlus的改进提出思路:)

另外,感谢所有为CodePlus作过宣传的朋友, 在正式版出来后,仍会给大家提供免费的许可。

关于CodePlus使用问题,欢迎大家到 http://www.codeplus.net 交流。

     如果您是第一次看到CodePlus,并希望更多地了解一下这个代码自动生成工具,请访问http://www.codeplus.net

朋友,请帮忙up一下,使更多的朋友可以看到。谢谢。

祝大家愉快!

                                               Wintle

posted @ 2005-11-20 17:34 Wintle 阅读(1568) | 评论 (17)编辑

2005年9月11日

问题描述:

        编写asp.net程序,当编译调试比较频繁的时候,很容易经常地出现访问被拒绝。形如:
 
分析器错误信息: 访问被拒绝:“Microsoft.Web.UI.WebControls”。
源错误:
行 197:    <add assembly="System.Web.Mobile, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
行 198:    <add assembly="*"/>
.....
 源文件: c:\windows\microsoft.net\framework\v1.1.4322\Config\machine.config    行: 198


原因:

     由于改动频繁,  c:\windows\microsoft.net\framework\v1.1.4322\Temporary ASP.NET Files\ 目录下相应的目录或文件被Index Server锁定,重建索引。所以一般几分钟后会释放,恢复正常。(没弄明白之前,害我重起站点,重起IIS,关闭vs.net,好不忙乎,而且似乎也有用,(现在知道是把时间给赚足了-_-''),但就是治标不治本。现在终于明白了,一下子整个世界都清静了。哈哈)

解决方案:

    方法一:如果不用Index Server关了它。(服务里关闭,最好禁用,那以后都清静了。)
    方法二:配置Index Server不对该目录进行索引。

(这个问题着实令我头痛了好一阵子,病着又病不死人的样子。现在神清气爽,所以不敢独享,分与诸君说。)

posted @ 2005-09-11 13:05 Wintle 阅读(396) | 评论 (3)编辑

2005年9月8日

        CodePlus 代码生成器 V2.0 beta 1 自2005-8-24日推出,到今日恰有半月之久了。在这短短的15天时间里,CodePlus倍受朋友们关注和支持,经粗略统计,累计下载量已经超过1万人次。看到CodePlus正逐渐为更多的程序员朋友带来帮助,成为程序员朋友们每日编程的常备助手时,我内心非常激动和欣慰。

        期间,CodePlus在cnblogs网友zitiger、Cure,本站网友flashboy15 ,csdn网友navy_koo(平湖秋水)等朋友的帮助下迅速完善,以几乎每天一个新版本的速度,不断推出功能更稳定和强大的版本。这里我首先要谢谢这些热心的朋友和所有关心和支持CodePlus.Net的人们!谢谢你们!

        为感谢大家的支持,并进一步促进CodePlus的完善,以及为大家提供更为丰富的代码生成模板,www.codeplus.net现郑重决定,在月底推出V2.0正式版时,同时发送6666个免费许可,送完为止。正式版免费许可获得者如注册www.codeplus.net官方论坛可得到贵宾身份,同时享受CodePlus软件永久免费升级权限。

本活动的权威地址是 : http://www.codeplus.net/bbs/HDLabTopicList.aspx?ForumID=18

如何得到免费许可?您可以通过以下方式获取!

1、通过任意途径,为CodePlus提供三个以上有价值建议。

2、发现并首先举报CodePlus的Bug到 http://www.codeplus.net/bbs/HDLabTopicList.aspx?ForumID=8

3、将本信息传播到其他论坛,至少5个论坛。并将联接发到 http://www.codeplus.net/bbs/HDLabShowPost.aspx?ForumID=18&TopicID=49

4、邀请5个朋友注册 http://www.codeplus.net/bbs ,并开贴请他们回复确认。

5、开发CodePlus模板一套,并公布源码于http://www.codeplus.net/bbs/HDLabTopicList.aspx?ForumID=6 (要求测试成功)

6、开发CodePlus生成的目标语言CodeBase,并公布源码于同上一条地址,可获得10个免费许可。(要求测试成功)

7、开发CodePlus数据提供者(实现IDBProvider接口),除MssqlProvider外(已经提供),可获得50个免费许可。(要求测试成功)

8、为CodePlus写文章,发表在你自己的blog或网站中,并有一定阅读量。

9、http://www.codeplus.net/bbs的活跃成员、热心朋友、版主。

10、其他被认为对CodePlus完善与发展有益的行为!

请大家一起行动起来!

         举手之劳,与我们共建CodePlus,为你,也为大家,提供最自由的代码生成工具,和最丰富的代码生成模板!

(www.codeplus.net保留活动解释权和修正权)

口号: 释放智慧,从解放劳动力开始!

=========================================

CodePlus V2.0 代码生成器介绍

CodePlus V2.0代码生成器是一款根据数据库信息、结合用户指定的生成条件,自动生成存储过程、数据访问类、实体信息类、界面信息等所有有规律可循的代码的代码自动生成工具。
目前,CodePlusV2.0 已经提供了基于MSSQL数据库,生成存储过程 和 供C#编程使用的DAL、Model、UI等各层多种代码的模板。

CodePlus V2.0的主要特征:

■ 基于插件结构,可接入不同的数据提供者,即可实现对MSSQL、Orcale、MySQL、SQLite等等各种数据库的支持。
■ 支持动态模板。用户可自定义模板。在线提供大量模板下载。
■ 模板采用 C#语言编写,可选择直接在CodePlus里编写、测试、编译、安装。也可将PluginSDK引入到vs.net中,新建项目进行编写。
■ 支持字段中文描述功能,在CodePlus中录入中文描述可直接保存进数据库中,在生成代码过程中,可根据该中文描述直接生成代码注释和界面提示。
■ 模板提供自定义参数功能,为灵活控制模板、增强模板适用范围,提供了巨大的扩展空间。

posted @ 2005-09-08 14:57 Wintle 阅读(574) | 评论 (0)编辑

2005年9月6日


1、提供了EVeip.CodePlus.PluginSDK.Xml ,为在vs.net中使用EVeip.CodePlus.PluginSDK.dll提供智能提示。
2、生成存储过程的格式做了规范化调整。现在生成出来的漂亮多了(规范多了)。分行、大写、缩进。

posted @ 2005-09-06 10:33 Wintle 阅读(281) | 评论 (0)编辑

2005年9月1日

 这个bug是无法连接远程sqlserver。现已经修正。

codeplus.exe.config 文件做了一点调整,在其database节,如下:

  <Database DatabaseType="MSSQL" Name="(local)" ConnectionString="server=(local);Integrated Security=SSPI;database=" DatabaseName="master" Selected="True"></Database>

添加了DatabaseName属性,同时,对于ConnectionString 去掉了database=的值,而只保留了database=

由于最终的ConnectionString = ConnectionString + DatabaseName (之所以要这样,是由于数据库是要变的)

所以,database= 一定要放在最后。

posted @ 2005-09-01 23:05 Wintle 阅读(294) | 评论 (0)编辑

2005年8月30日

CodePlus V2.0beta1自2005-8-24日发布以来,得到很多朋友支持,使我很受鼓舞,我将一如继往不断完善她!希望大家能喜欢!

最新版下载地址:
http://www.cnblogs.com/Files/wintle/CodePlusV2.rar
支持论坛:
http://www.codeplus.net/

2005-8-30日更新
1、支持导出MS_Description(字段描述)
2、修正对Timestamp型的支持
3、为字段列表增加全选、全不选、反选右键菜单
4、为生成结果窗口添加右键菜单支持
5、为生成器设计窗口添加右键菜单支持
6、调整了生成存储过程Update的模板,使生成的代码更规范。
7、添加对生成器模板双击执行支持(当处于编辑页,双击则为显示源代码)

2005-8-27日更新

1、执行SQL支持多段go模式。
2、为生成的存储过程添加了检查是否已经存在,如果已经存在则先删除的标准语句。
3、生成的存储过程字段都加了[]号
4、字段的中文名称改为 "描述"
5、调整了生成器树的右键菜单
6、上一版未将包含的GeneratorTemplete.cs加上了。
7、上一版未包含的GenModel的源码加上了。
8、搜索不再区分大小写

特别感谢cnblogs朋友 zitiger提出的宝贵建议!

posted @ 2005-08-30 23:17 Wintle 阅读(1447) | 评论 (24)编辑

2005年8月24日


CodePlus V2.0 在 V1.0的基础上做了根本性的变化。

主要体现在:

1、全面基于插件架构,将数据库、目标语言、生成过程分离。各自以插件的方式插入系统,即可协同工作。

2、提供PluginSDK,所有人都可以编写适合自己的生成器。同时软件提供了对生成器的动态测试、编译、安装的功能。使编写和维护生成器成为一种极其简单的工作。这样极大的增强了软件的适应能力和实际使用效果。

3、保持向下兼容,CodePlus V2.0能完成且完全不限于V1.0的所有功能(根据MSSQL数据库中表、视图等内容,生成存储过程、DAL数据访问层、Model实体层、UI表现层等,生成过程完全受您控制,可随意定义生成参数),同时提供出V1.0生成器的源代码,以供使用者进行个性化设置。

4、通过CodePlus V2.0,您可以非常方便地设置字段说明,无论是在表或者视图上,都能准确地找到目标字段,并将字段说明写入数据库,在以后所有生成的代码过程中,都将可使用这个字段说明。(您观察上图,即可理解其中的意义)

5、CodePlus V2.0将加强对目录页面的生成能力。

6、树型组织生成器,提供模糊搜索功能,可极快地定位到目标生成器上,这在拥有大量生成器时,能提供较大的帮助。

7、支持直接查看数据库的表、视图、存储过程的源代码。特别的,对表的Create Table语句做了相对较为完美的支持。

8、开辟CodePlus代码生成论坛 http://www.codeplus.net/bbs  (上海电信核心机房的服务器,速度应该没有问题),与大家一起共同完善她!

9、希望大家常去光顾 http://www.codeplus.net/bbs ,一起探讨代码生成功能,支持我们的开发!谢谢。

麻烦请到http://www.codeplus.net/bbs 去查看下载地址!有任何问题希望能和我联系!

posted @ 2005-08-24 19:12 Wintle 阅读(1484) | 评论 (36)编辑

2005年8月20日

先放一放。呵呵。

declare @newstr varchar(100)
set @newstr=''  --新字符

declare @table varchar(256)
set @table='year2004'  --

declare @upcol varchar(8000)
declare tb cursor local for
select upcol='update ['+b.name+'] set ['+a.name+']='''+@newstr+''' where ['+a.name+'] is null'
from syscolumns a join sysobjects b on a.id=b.id
where b.xtype='U' and a.status>=0
 
and a.xusertype in(175,239,231,167and b.name=@table
open tb
fetch next from tb into @upcol
while @@fetch_status=0
begin
 
exec(@upcol)
 
fetch next from tb into @upcol
end
close tb
deallocate tb

posted @ 2005-08-20 16:59 Wintle 阅读(452) | 评论 (0)编辑

2005年8月19日


Plugin 的插入和退出机制,都搞定啦。郁闷了二天了。

由于这个Plugin机制相对有点复杂(这个相对大概是针对网上能找到的那些plugin的demo来说的,),有类多重继承,有接口,还有接口的继承,也弄不明白,为什么,我就是不能成功地把dll给卸载下来,后来也只好采用AppDomain的ShadowCopyFiles方法,但一开始也不成功。。

OK,现在总结一下先。

这个Plugin机制,主要是依照codeproject上的一个例子:

http://www.codeproject.com/csharp/livecodedotnet.asp  (动态编译)

动态编译的例子,很简单,也很成功。这个例子的思路很好:

在AppDomain里建立一个返回Interface的Factory,然后导入dll,返回接口,执行,然后AppDomain.UnLoad()掉。

这个例子可没有用ShadowCopyFiles 方法。

从这个例子得到的有价值信息有:
1、在导入的dll,在继承上,是有顺序的,Factory要返回的接口,必须排在继承接口的首位上。(大概谁的接口在先,这个dll最后就归谁,不知道了。文章里也没有说清楚。
原文如下:

An important hint if you extend the component model: Please be sure to specify the class interface inheritance list by placing the plug-in interfaces at the beginning:

public class YourPluginClass : MarshalByRefObject, IPlugInterface,
			   IYourLocalInterface

If you write the wrong order:

public class YourPluginClass : MarshalByRefObject, IYourLocalInterface,
			   IPlugInterface

your plugin-assembly will be attached to the primary domain and thus be locked.


2、如果你导入的dll里有AppDomains共享的东西(我也不知道是什么,大概我的程序就死在这个上面了..),则AppDomain.UnLoad( yourDomain )后,也不能清除和真正卸载这个dll,而且除了关闭整个应用程序外,别无他法。。(郁闷了)

于是我只好采用ShadowCopyFiles方式,找了很多文档,曾经把AppDomainSetup的属性设置了七八条之多,还是不行,更有甚者,看到msdn上有说对这个AppDomainSetup的文档不足,甚至有错之处...
好了,后来,无意中又是在CodeProject上看到一个demo,(CodeProject真是好哈,看起来,最能帮我解决问题的就是她啦)
http://www.codeproject.com/csharp/CodeCompilation.asp   (这也是动态编译)
与上一个例子不同的是,他采用的是ShadowCopyFiles的方式,我试了一下,执行后,还是可以直接删除dll,这说明dll没有被lock住哈,OK,满足我的要求。但看代码也没有什么奇怪的地方啊。。为什么别的就不行?仔细一看,发现如下的区别:

   AppDomainSetup ads = new AppDomainSetup();
   ads.ShadowCopyFiles = "true";
   AppDomain.CurrentDomain.SetShadowCopyFiles();

看到了没,人家可不是 ads.SetShadowCopyFiles();

OK,搞定。

posted @ 2005-08-19 21:35 Wintle 阅读(548) | 评论 (4)编辑

2005年7月25日


2005-7-25 15:49:28
更新:
   1、添加对 Ctrl+Z(Undo)、Ctrl+R(ReDo)、Ctrl+Q(Quit)的支持。
   2、 在非编辑状态下禁用编辑快捷键。

2005-7-25 12:17:23
更新:
   1、交往笔记中,加入对Ctrl+N(新建)、Ctrl+S(保存)的支持。


2005-7-25 11:45:05
更新如下:
    1、左侧treeview的拖放速度更快了。加入了多线程机制。对EVeip.Windows.Forms.XmlTreeView 控件做了不少优化。
    2、当从列表双击进入联系人具体内容时,防止修改姓名,以保证与左侧树的同步。
    3、从左侧目录树进入联系人具体内容时,姓名可修改,但如果不修改的话,不会引起左侧目录树更新。
    4、交往笔记,只要有写入即自动转到 新建笔记 状态。
    5、其他一些小bug.

注:
     Contact.Net 下载:http://www.cnblogs.com/Files/wintle/Contact.Net.rar   (这个地址保持最近的一次更新)

posted @ 2005-07-25 12:30 Wintle 阅读(501) | 评论 (3)编辑

2005年7月24日

有时会因为觉得浅薄,而不将一些想法写出来。

而往往这样,也使很多也许有益的思考,在过后难以再次想起。

其实不必介意的,随便想想似乎不违法:)

所以改名浅屋。

敦促自己把浅薄的东西写出来。买大方一笑。

哈哈。

posted @ 2005-07-24 00:07 Wintle 阅读(161) | 评论 (0)编辑

2005年7月20日

        记性一直不好,总是把别人忘掉。所以一直想要找个地方,把亲友们、朋友们、同事们、客户们等等的信息找个地方记下来,也找过不少软件,总是不能太合心意,所以一直想自己来写一个吧。
        这种软件只能用轻量级的数据库,不然安装就成一个大问题。之前是没有合适的数据库可选,所以也就一直放着就放着了。这回看到sqlite3很不错,就想试着用用看。于是就想到自己的这个心愿,在四五天前开的工,本以为最多二天就可以搞定,没想到事实果然是计划的二倍时间。呵呵。
       这个软件,被我命名为:易为个人关系管理软件,Contact.Net V1.0beta,免费。
       软件用了改进后的EVeip.Windows.Forms.XmlTreeView.dll,现在这个也可以直接绑定DataSet了。呵呵
       软件支持多用户,除了有50项个人信息项外,我想着还添加了交往笔记、亲友、纪念日等项,估计是挺实用的。
       目前软件是v1.0beta版,主要还有几个技术问题存在:
       1、导入导出vCard格式,没搞定。不知道哪位有这方面的代码,可否共享一下哈。
       2、sqlite加密数据库好像没有办法。
       3、EVeip.Windows.Forms.XmlTreeView.dll在拖放的时候,看来加入多线程会好一些。但还没有实现。

      sqlite数据库似乎有几个问题,(或者是我的问题,这个可能性比较大一点):
      1、如果把数据库文件放在有空格或者中文字符的目录里,程序就找不到它了。(所以就不要放在桌面了,肯定是会出错的。)
      2、对DateTime型数据似乎处理上有问题。不知是ado.net for sqlite的问题,还是...

       欢迎大家使用哈!我自己也用这个,有什么不爽的地方,欢迎提出来:)以便尽可能地完善它!

      下载地址:http://www.cnblogs.com/Files/wintle/Contact.Net.rar

       直接解压就行了,由于导出xls用到了excel.exe,但上面的压缩包是没有包含这个的,execl太大了。但只要你安装了office2003就没问题了。如果运行有问题,则需要去找excel.exe放在同一个目录里即可了。

      完整版本:http://www.codeplus.net/download/contact.net.msi  


      今天找资料的时候,发现一个.Net开发的开源的面向对象数据库db4o,下下来了,没有仔细研究,有兴趣的朋友可以去看看:http://www.db4o.com/

        

posted @ 2005-07-20 02:41 Wintle 阅读(1591) | 评论 (2)编辑

2004年12月1日

有时会有这样的需求:

     当你在客户那里发布了一个版本的数据库系统(基于sqlserver)后,你在自己的开发机子上对该库又做了或多或少,自己也记不清的改动,当你需要再次去维护客户那里的数据库时,往往会是一件比较痛苦的事,因为你不能直接覆盖它,这个主要针对表,因为客户的库里已经有了有用的数据了。。那么这个时候,你必须找出哪些表是修改了的,修改了什么。。。

    这个小软件就是因为这样的需要才写的。主要也是自己用用,大家分享一下吧。好像还有一些bug,有待改进。呵呵。

    界面截图如下:



 下载地址是:
DBCompare.rar
DBCompare_Source.rar

把源代码也一并放上来吧,有兴趣的可以下下去看看。倒也许可以做为给初学者的一个材料 :)
不过我保留版权哈。

posted @ 2004-12-01 02:23 Wintle 阅读(1571) | 评论 (12)编辑

2004年11月24日

好好地走自己的路。

posted @ 2004-11-24 23:03 Wintle 阅读(361) | 评论 (0)编辑

2004年8月17日

     经过连续二个多星期通宵达旦地努力,终于升级好了CodePlus,原本准备在上周四我生日那天发布做为我25岁的礼物的,最后还是延迟了。不过,终于搞定,心情轻松了不少:)

    新版CodePlus的功能较原有v0.9beta版的要好多了。更新的内容已经在前面的文章(CodePlus将要推出新版了:)列举一些更新出来先 )里发布过了。

    现在捡主要的讲:

    1、基于分层(数据库存储、数据访问层、Model层、商业逻辑层、前台表现层)思想,可生成除商业逻辑层外其余各层的80%左右的代码。当然,这些代码都是片断式的,是无智能可言的,需要有智慧的您,来把他们用起来。以加速您开发的速度!一句话,在您开发的过程中,CodePlus捡那种无聊的、机械的、反复的事情,帮您搞定它!而您,只需要把精力放在核心商业逻辑层上去创造奇迹了。

    2、代码构建在改进后的Microsoft Data Access V2.0之上。我曾写过一遍专门介绍这个代码的文章,有幸被选登在CSDN的首页上: 【.NET】个性化Microsoft Data Access V2.0以适于系统开发  。

    3、设计这个软件基于一种思想,程序员应该更有创造力,而不应将时间埋没在写那些一直反复而没有一点创造性的代码上。个人认为,能够用这个软件的程序员,至少要有二到三年的开发经验,如果您还没有这个经验,建议你可以参考CodePlus来学习,却不要偷懒于写代码。而如果您已经是一个熟练的程序员,那么,我只想说:浪费时间、不仅仅是浪费了很多赚钱的机会,还有生命。您的价值最好的体现是您创造的系统的架构思想,而非无聊的get和set。

     4、CodePlus的起源是我们自己在研发过程中的需要。现在我们所有的项目都采用CodePlus来生成代码,CodePlus至少可以帮我们减少60%多的精力和时间。

    好了,如果您有兴趣,可以到CodePlus V1.0的官方网站: http://www.codeplus.net  上去看看。

    我们期待着您的到来。

    这http://www.codeplus.net  上,您不仅将会得到最新版的 CodePlus 还有:

     1、CodePlus 使用说明(详细)

     2、CodePlus 生成代码示例 (非常详细)

     3、Database.cs 下载 (就是那个改进后的Microsoft Data Access V2.0)

     4、EVeip.Web.UI.WebControls 下载。包括一个直接绑定DataView的 DBTreeView;只能点一次,且可以弹出确认框的Button;和一个我们从网上down下来的DatePicker。免费提供下载。

     5、CodePlus 常用代码管理用到的那个EVeip.Windows.Form.XmlTreeView ,可拖放、可排序、可删除可重命名、可添加。 免费提供下载。

     6、还有更多。期待您来发现。

 

posted @ 2004-08-17 17:25 Wintle 阅读(2135) | 评论 (8)编辑

2004年6月19日

        这段时间从网上下载了一个activereports来用用,看过csdn上的一些讨论,说activereports出现实际2页打出来4页,每页都跟着一空白页,刚开始我也遇到了,后来仔细观察了一会,发现在预览页面上有一条竖的红线,感觉也许和这个有关,然后试着在设计时调整了一样页面内容的宽度,发现预览时红线的相对位置在变,随即明白了,红线的出现是因为设计页面太宽了,以至于要分割成二页来打,红线即是分割线了。
       所以解决起来也很方便,在选定打印页面的纸张类型后,可以看到这种纸张的大小,主要是宽度,然后在设计时,不能超过这个宽度,需要注意的是,宽度要减去左右留白的大小。
       ActiveReports很好用,功能也很强大哈。

:)

不知大家对于winform下的打印主要用什么控件呢?用这个破解版(买是买不起的,5位数的报价啊),心里总有点...

posted @ 2004-06-19 21:42 Wintle 阅读(2037) | 评论 (5)编辑

2004年6月7日

大学里的人,总是逃不脱这样的循环。做事情,做学问,还有生活。

我来到交大六年,头四年读书,后二年在学生处工作做信息化。我至少还会在这个地方生活二三年,读研究生。

做任何事情,人的热情总会被现实慢慢磨掉,但只要回过头去看看,做过的事情是有意义的,自己也有了成长,于是就开心满意了,譬如这个信息化的事情就是这样,扬华素质网根本是一个艺术品,在我们这一帮孩子的眼里。

所谓这个里面的学问,可能就更多了,孩子永远都是天真的。

喜欢她的架构,远胜于喜欢她的功用。喜欢她的纯粹,远胜于喜欢她的利益。或者孩子们的成长就在于看到了她的功用,学会保护她的利益。

生活里应该有几种东西,或者是激情,或者是理想,也或者是出路。生活并不限于为生存而活,孩子总是愿意赋予生活更多的祈望。一如泳者,于水中,并非只为了活着上岸,而要奋勇向前,时而抬头远眺目标,时而低首潜水奋进。

生活里应该有几种情绪,或者是激动,或者是豪情,也或者是感激。越是长大,越是不容易激动,也越是不容易有豪情。然而总是有些东西,和时间无关地,会激起这种豪情来,让人变得激动非凡。或者那正是一点恩德。越是长大,越是知道社会的现实,也越是更多的感受冷峻。或者是时代都需要一种关怀,很博大的那种。正是因为感觉到了那一点恩德,所以铭刻五内,永感于心。与这个相比,很多看上去精彩非凡的东西,或者价值不菲的东西,或者利益攸关、重要的东西,都不再是看上去的那样。

每一种生活都不是看上去那样容易,祝福每一个人。

posted @ 2004-06-07 09:32 Wintle 阅读(802) | 评论 (3)编辑

2004年6月6日

    是个军区的项目,要求是可以自己添加表,然后对这个表添加数据,修改数据,还有各种统计、报表、打印等等。也就是说,他们自己添加一个表,对于这个表的所有操作都得有。想得真好啊。不过还得做,谁让人家是客户。

    想到的解决方案是通过把xml存到数据库里去模仿一个三维表结构出来,这样他们建的表就不是真正意义上的表了,而是一个xml,所谓表结构就是schema了。表间关系专门用个表去记载,应该没有太大问题,毕竟表间的关系,在这种以存储数据为主的表中,不会太复杂的。

写给客户看的东西,现在还在进行一种手续,叫做竞标,他们中有些人还不是很相信这种技术,所以要给他们看看怎么做的,就写了,谁知道,这种方式我也是第一次写啊。如果谁要是有经验,倒是希望能赐教了。

读点书真不容易。

1、  难点问题解决一、自定义数据表的存储模式:
表一:表的存储

表结构

ID

TableName

Schema

XSL

XML

Type

说明

 

表名

表结构

表的表现形式

数据

表类型

 

表二:表间关系

表结构

MainTable

SubTable

MainTableKey

SubTableKey

Relationship

说明

主表

从表

主表关键字

从表关键字

关系:(联级删除,联级更新,参照)

 

 

2、  难点问题解决二、如何在客户端按自定义数据表的结构进行输入输出界面排版:

问题的分解:

A、     怎么样添加表、修改表结构?

添加表和修改表结构实质是处理xml形式的schema,在技术实现上不存在任何障碍。

B、     怎么样根据表结构显示数据录入和修改的界面?(这是最困难的一点)

这个问题的关键在于如何根据schema在客户端应用程序的界面里动态的画出与这个表结构相应的控件集合来,进而要求这种集合要符合一些愿望上的规范,比如说对风格的用户选择等等。

动态画上一个用户录入用的控件不是一件困难的事,而schema中包含了该表所有的字段,以及字段的数据类型,我们要做的,无非是一个数据类型和控件类型的对应,这个可以做为一种参照数据,被存放在一个xml中,或者是一张参照型表中。在画的时候,根据数据类型选择不同的控件类型。这个过程,最终可能是需要手工参与调整的,自动生成按照一种通用的方式来安排这些结构,由表单设计者来最终决定控件的布局,这种布局被存放在xsl中,这样,最后普通用户看到的录入和修改的界面是定制过的。

C、     统计、查询的过程是如何实现的?

实质是一个批量数据的显示问题,程序一次性将这个表的数据(xml)读取出来,保存在一个DataSet当中,而DataSet是标准的数据容器,因此,可当作实际的表一样来处理,唯一不同的是,显示在DataGrid当中的标头会受Schema控制。因此,统计、查询,不再是在数据库中完成,而是对内存中表操作完成的。这也部分地解决了xml效率不高的问题。(目前这是一个轻量级的解决方案,对于巨型数据量的表,我们拟采用另一种存储方案,但这不影响程序结构的实现。所以这里从略)

D、    报表打印怎么处理?

报表的设计类似录入界面的设计,自动生成和人工选择相结合的来实现这个过程。


慢慢关注以后的发展吧。从技术角度而言,这倒的确对自己是一个挑战。

posted @ 2004-06-06 23:03 Wintle 阅读(1294) | 评论 (6)编辑

Wintle, A small .Net Coder. Now,coming.
第一篇,权当灌水。
因为有水,这个世界才滋润。

posted @ 2004-06-06 21:17 Wintle 阅读(403) | 评论 (0)编辑