2010-08-18 70 views
2

我想开发一个windows服务,它将从aspx页面接受一个数据表。 Windows服务和网站都在同一台机器上。在windows服务中传递参数

此外,我需要设置此服务的工作日期和时间。这个日期和时间是根据客户需求而改变的。再次从aspx页面输入日期和时间。

+3

好的,你正在创建这项服务......你的问题是什么? – 2010-08-18 13:23:25

+0

听起来可能是一个计划任务会更apprpriate? – w69rdy 2010-08-18 13:25:07

+0

我需要知道任何手段如何将数据从一个aspx页面传递给windows服务 – IanCian 2010-08-18 13:25:26

回答

3

这个问题有点宽泛,这意味着很难用代码示例给出一个很好的例子,除非您对已经弄清楚的内容以及您需要帮助的内容有更具体的了解。基于此,我猜你不知道从哪里开始。

两种可能性:

简单:有ASPX页面和服务器都指向同一个数据库。为了让aspx页面向服务发送数据,ASPX页面应该更新数据库;该服务应该从中读取。只需将服务设置为定期轮询。您还可以将您的日期存储在数据库中,并让ASPX页面更新日期。

更高级:使用WCF(Windows Communication Foundation)允许服务侦听来自ASPX页面的请求。 (例如谷歌WECF代码)。 即使使用WCF,也可以将DataSet作为参数传递给函数。

0

听起来像服务应该一直在运行(每分钟,也许),当它运行它的所有逻辑包装在一个单一的条件,检查数据库,看看它是否“现在应该运行“。该网页将在数据库中维护该数据。

1

与任何其他可执行文件一样,Windows服务具有带参数的Main方法,如果要在启动时将某些数据传递给服务,则可以使用该参数,例如,可以将数据集转储到xml文件并传递在启动该文件

static void Main(string[] args) 
{ 
      // Do something with args array, but il make sure its not null first. 
} 

但是如果你想在执行期间传递参数,你可以使用WCF Windows Service host

0

如果您编写的服务不断运行,则可以使用FileSystemWatcher查找aspx页面可以生成的xml文件(可能不是最安全的,因为这意味着有人可以使用网页)。

0

将WPF端点放入您的服务中?