Silverlight、SQL Server 和 Visual Studio:在互联网上公开提供测试页面
我正在开发一个 SQL Server 2008 Express + silverlight 项目,到目前为止,一切在本地计算机上运行得很好。 我已将其设置为 silverlight 应用程序使用服务引用和 LINQ 连接到 SQL Server 的位置,并且我相信 SQL Server 允许使用 TCP/IP 进行远程连接。
但是,由于 silverlight 应用程序是 .aspx 文件,因此它需要在 Web 服务器上运行。 当我在 Visual Studio (2008) 中单击“运行”时,IE 会弹出地址“http://localhost: 1437/SQLTestTestPage.aspx”,一切正常。 为了使我可以远程使用此页面,我希望能够通过“http 访问同一页面://10.215.22.57:1437/SQLTestTestPage.aspx”,其中10.215.22.57是本地计算机的IP。 这现在不起作用,我不确定如何启用它。 这是否可以通过 SQL Server 实现,或者我是否需要设置单独的 HTTP 服务器来托管 aspx 页面?
谢谢, -Robert
编辑:实际上,由于我从 Visual Studio 启动 silverlight 应用程序,我想实际上是 VS 正在设置托管 .aspx 页面的 Web 服务器,而不是 SQL 服务器。
I'm working on a SQL Server 2008 Express + silverlight project, and so far things are working pretty well on the local machine. I've set it up to where the silverlight app connects to the SQL Server using a service reference and LINQ, and I believe the SQL Server allows remote connections with TCP/IP.
However, since the silverlight app is an .aspx file, it needs to run on a web server. When I click "run" in visual studio (2008), IE pops up with the address "http://localhost:1437/SQLTestTestPage.aspx", and everything works correctly. So that I can use this page remotely, I'd like to be able to access the same page by "http://10.215.22.57:1437/SQLTestTestPage.aspx", where 10.215.22.57 is the IP of the local machine. This doesn't work right now, and I'm not sure exactly how to enable it. Is this even possible through SQL Server, or do I need to set up a separate HTTP server to host the aspx page?
Thanks,
-Robert
Edit: Actually, since I'm launching silverlight app from Visual Studio, I guess it's actually VS that is setting up the web server that hosts the .aspx page, not SQL server.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看起来这里可能会发生很多事情。 言归正传,您最好的选择可能是将 Web 项目移至 IIS 而不是开发 Web 服务器,然后尝试从外部 IP 指向它。 为此,右键单击 MySilverlightApp.Web 项目(包含 .aspx 页面的 ASP.NET 项目)并选择属性。 点击“Web”选项卡,然后在服务器下选择“使用本地 IIS Web 服务器”而不是“使用 VS Dev 服务器”。 您应该会收到一个提示,要求您创建一个虚拟目录; 选择是。 按 F5 在 VS 中进行调试,您应该会看到您的站点带有一个新的 url - 本地主机到您的 IP,希望它仍然可以工作。 它不能与 VS Dev Server 一起使用的原因是,当您停止在 VS 中进行调试时,该服务器就会消失。 另外,这里还有很多可能出错的地方(未安装 IIS、未在 IIS 中注册 ASP.NET、违反跨域策略以及与 SQL 连接相关的其他问题),因此请发布您的结果!
Seems like a number of things could be going on here. To cut to the chase, your best bet is probably to move the Web project to IIS instead of the development web server, then try to point to it from the external IP. To do that, right click on the MySilverlightApp.Web project (ASP.NET Project that contains the .aspx page) and choose properties. Hit the Web tab, then under servers Choose "Use Local IIS Web Server" instead of "Use VS Dev Server." You should get a prompt asking you to create a virtual directory; choose Yes. Hit F5 to debug in VS and you should see your site with a new url - chance localhost to your IP and hopefully it will still work. The reason it doesn't work with the VS Dev Server is that the server goes away when you stop debugging in VS. Also, there are plenty of things that can go wrong here (IIS not installed, ASP.NET not registered in IIS, cross domain policy violations as well as other problems related to the SQL connection) so post your results!