0

我所能找到的只是“在asp中的网页之间传递值”,但我需要将一个粗略的vb.net应用程序(更准确地说是在excel中运行)传递一个值到asp.net网站。

原因:当前正在运行的 VB 应用程序有一个 ID。用户单击一个按钮以启动具有特定网站的浏览器,并根据 ID - 该网站具有特定的内容。另一个运行 VB 应用程序的用户,具有不同的 ID,在网站中将具有不同的内容。

所以我需要将此 id(一个简单的 int 或其他)传递给 ASP,以便我知道要在网站中启动哪个会话。这是如何实现的(如果可能的话,无需将 id 存储在数据库中然后检索它)?

PS我通过运行2个VS来测试这个,其中一个网站解决方案打开,VB应用程序在另一个VS中打开。我不确定这是否正确,因为当所有这些都被部署时,也许它不会起作用。而我现在唯一能想到的解决方案就是通过数据库进行通信。

4

2 回答 2

1

ASP.Net 网站使用 POST 或 GET 方法在页面之间传递数据。GET 方法涉及使用查询字符串来传递变量。假设您想将参数 ID 传递给应用程序,然后将 ID 及其值附加到 URL:

http://www.your-site.com/YourPage.aspx?ID=1234

在后面的 YourPage.aspx 代码中,您可以使用 Request.Querystring 获取此变量,如下所示:

Dim intID as Integer = Request.Querystring("ID")

因此,为了从您的 VB.Net 应用程序与您的 ASP.Net 应用程序进行通信,您只需让 VB.Net 应用程序打开一个指向该页面的链接并附加正确的 ID(或您需要的任何其他参数。)

注意:如果这是您必须在用户/权限/角色/等之间切换的唯一安全性。那么请注意,任何用户都可以随时更改查询字符串,并且可以在技术上访问 ASP.Net 网站的其他区域。

于 2013-08-23T12:57:56.820 回答
0

如果您可以更改网站,请更改您的 ASP 页面,使其需要包含 ID 的查询字符串参数,然后让您的 VB.Net 应用程序使用如下 URL 启动网站:

http://your.website.com/somepage.asp?ID=1234

在该 url 中,名为 ID 的查询字符串参数将包含 VB.Net 应用程序提供的 ID。在您的 ASP 页面中,您可以像这样获得这个值:

Dim id = Request.QueryString("ID")
于 2013-08-23T12:56:40.713 回答