日期:2014-05-20  浏览次数:20894 次

如何用C#开发以下三个应用程序
老板给的练习题:

要求开发出三个应用程序,利用公司的smtp   server为公司的秘书同时发送1000左右的电子邮件。
这三个应用程序是:
1.web   application:主要是从excel文件中读取邮件,邮件数据载入,显示要发送的邮件,显示邮件的发送结果,以及发送测试邮件
2.   windows   desktop   application:监视邮件发送的状态。一个类似与task   manager   的东西。
3.   windows   console   appliction:主要的邮件发送程序。

开发语言是C#,在.net   framework   2.0上开发。

老板故意让我分三个应用程序来实现。由于存在实时状态监视,所以三个应用程序势必共享一个数据,这个数据就是将要发送的这1000多个邮件的数据。而且,三个应用程序间的通信也是必不可少的。所以,我的问题是:
1.如何利用C#,和.net   framework   2.0   实现三个应用程序间”邮件数据”的共享?
2.   如何实现三个应用程序间的通信?
3.   为了达到能够解决上述两个问题的水平,最好要看一下那些书,或者哪些方面的书?



------解决方案--------------------
三个程序都去访问同一个数据库吧
邮件的内容、状态等全部用数据库来记录
监控的程序要在一定时间周期内扫描数据库变化
这是利用第三方来解决互相通信的办法
同时又可以对数据有比较完善的记录
------解决方案--------------------
努力,有压力才能进步!!本人深有感受
------解决方案--------------------
数据共享和应用程序间通讯其实就是一个问题。
使用.Net的Remoting实现应用程序间的数据通讯
windows console appliction作为服务器,其他两个作为客户端。windows desktop application定时向服务器取数据,web application可以同不显示数据基本不需要向服务器取数据,只是向服务器传数据。
这样3个程序可以跑在同一个或不同的机器上。

在一个思路就是使用COM+服务器实现,要是不在一个机器上使用的话就用COM+和DCOM。不过开发起来不如Remoting快,但是速度效率要高一些。
------解决方案--------------------
这3个程序都去访问数据库吧。而监听的那个就是做一个你设置好的时间去访问。
我觉得利用什么方式都能做出来。只是要你在那么短的时间 做出好的东西来。有点困难。
祝你顺利。
------解决方案--------------------
remoting 在局域网络中运行的状况还不错。但是到外网了,实际的效果就不是很好了。
------解决方案--------------------
问题是:
1.如何利用C#,和.net framework 2.0 实现三个应用程序间”邮件数据”的共享?
----------------------------------------
第二,第三个程序没必要监控邮件数据的,他们需要经过第一个程序处理以后的待发送数据。


2. 如何实现三个应用程序间的通信?
-----------------------------------------
用简单的Socket通讯实现。


3. 为了达到能够解决上述两个问题的水平,最好要看一下那些书,或者哪些方面的书?
------------------------------------------
可以看一下文件读取,Socket通讯,Smtp发送邮件这些部分。建议看MSDN.

祝成功

------解决方案--------------------
goodluck~~
------解决方案--------------------
使用msmq吧,方便实用。
------解决方案--------------------
基本上可以了。
用socket就可以搞定了。关键是你自己要定义好通讯报文的格式,保证数据的稳定性(为公司的秘书同时发送1000左右的电子邮件),不要丢祯。关于Socket这部分CSDN上面有很多的现成的代码,可以参考一下。祝成功
------解决方案--------------------
我顶!我是刚开始接触c#的,看了很不错.
------解决方案--------------------
祝成功
------解决方案--------------------
3. windows console appliction 主要的邮件发送程序
|
| WebService
|
2. windows desktop application 监视邮件发送的状态。一个类似与task manager 的东西。
|
| Socket
|
1. web application

共享同一数据库,Web application 将导入数据库后,发送信息给 windows desktop application
------解决方案--------------------
对不起没看完你的帖子,就你问的怎么读别的计算机上xml的问题:
我认为要是在别的计算机都有你的console的话就可以通过程序直接通信了,
用什么都行方法很多,若没有任何程序的话,可以在所有的客户端上装IIS,
然后将放xml的文件夹变成web共享文件夹,通过httpRequest就可以访问了,
这个方法也是比较麻烦的,暂时没想好别的。
至于多应用程序的通信,考虑用messager试试?挺好用的。
若都在一台上就简单了,自己写个单例类做消息总线就行了