Vb.net 自动化ASP.NET Web表单

Vb.net 自动化ASP.NET Web表单,vb.net,batch-file,automation,Vb.net,Batch File,Automation,我有一个ASP.NET web表单,可以读取文件并将一些数据写入数据库。我需要按计划运行此进程 目前,我有一个调用批处理文件的计划任务。然后批处理文件打开Internet Explorer并导航到URL,然后启动该进程。还有另一个计划的批处理文件关闭Internet Explorer 当然,有一种更优雅的方法可以做到这一点。您有权更改网站吗?最优雅的解决方案可能是将web表单背后的功能抽象到自己的类中,并让web表单和web服务调用它。然后创建一个访问web服务的客户端应用程序(windows服

我有一个ASP.NET web表单,可以读取文件并将一些数据写入数据库。我需要按计划运行此进程

目前,我有一个调用批处理文件的计划任务。然后批处理文件打开Internet Explorer并导航到URL,然后启动该进程。还有另一个计划的批处理文件关闭Internet Explorer


当然,有一种更优雅的方法可以做到这一点。

您有权更改网站吗?最优雅的解决方案可能是将web表单背后的功能抽象到自己的类中,并让web表单和web服务调用它。然后创建一个访问web服务的客户端应用程序(windows服务或调度控制台应用程序…我建议使用后者,因为随着时间的推移,它更容易调试和维护)。如果需要,仍然可以手动访问该站点


但是,如果我的第一个问题的答案是“否”,那么我建议使用一个计划好的客户端应用程序,只构建一个并启动它。为了启动流程,除了加载页面之外,还需要做些什么吗?

如果您只是获取一个页面来启动流程,您可以使用powershell而不是IE:

$webclient = New-Object System.Net.WebClient
$response = $webclient.DownloadData("http://www.stackoverflow.com/")
如果需要验证某个返回值,可以按如下方式获取:

$encoding = New-Object System.Text.utf8Encoding
$returnvalue = $encoding.GetString($response)
如果您有或,您可以安排一个电话,如

wget http://URL/whatever?getparams

这将完成请求并自行关闭。比尝试使用IE更优雅,但编程强度不如其他工具。

基本上,你有一个带有“文件”输入类型的表单。Web服务通常不适合使用[binary file]/[ascii with specials]。您最终将在base64中对所有内容进行编码。是的,我完全可以控制网站。@h3xStream:可能是我对请求的解释不正确。在我看来,这一切都是在服务器端完成的,而web表单只是“告诉它去做”