我们如何使用 Visual Studio 2008 发布一个 ASP.NET 网站?

发布于 2024-09-18 09:50:05 字数 225 浏览 6 评论 0原文

我用VS2008创建了一个asp.net网站,如何在VS2008中发布它? PS:
我用过右键单击 ->发布 但是,我在项目中使用了数据库,但 VS2008 没有发布它。

PS:我使用的是 SQL Express 2008

Solution Explorer

I've created an asp.net website with VS2008, how can I publish it in VS2008?
P.S:
I've used Right Click -> publish but, I've used a Database in my project, but VS2008 doesn't publish it.

P.S: I'm using SQL Express 2008

Solution Explorer

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

习惯成性 2024-09-25 09:50:05

Try the webdeployment project for VS2008 that should give you what you want:
http://www.microsoft.com/downloads/details.aspx?familyId=0AA30AE8-C73B-4BDD-BB1B-FE697256C459&displaylang=en

hope that helps

关于从前 2024-09-25 09:50:05

单击顶部的“Build”,然后选择“Publish xxx”,其中 xxx 是您的项目名称。
然后将出现发布 Web 表单。在那里您可以检查所有应该发布的项目文件。

Click at the top on "Build", then choose "Publish xxx" where xxx is your project name.
Then the publish web form will appear. There you can check all project files that ought to be published.

攒眉千度 2024-09-25 09:50:05

右键单击>发布

right click > publish

时光与爱终年不遇 2024-09-25 09:50:05

我认为这种“限制”是设计使然。

1) 通常,当进行代码更改时,人们不希望清除用户在环境中输入的所有数据。

2) 数据库文件的 Xcopy 不起作用,因为该文件被使用它的应用程序锁定。

您也打算公布这些数据吗?

如果您只想发布数据库更改(更新的表/存储过程而不是数据)。需要针对目标数据库生成/运行 SQL 脚本。

编辑 - 添加您可以执行的操作:

您无法使用 VS.NET 发布功能。

如果你想推送数据。
停止 IIS(或最近的逻辑 IIS 对象 -Application /app pool )。
将 mdf 从目标复制到目标服务器。

如果您不想推送数据(仅模式)。
在开发周期中生成以下脚本:
数据添加(即查找数据)
表/存储过程/索引等更新。请注意脚本的顺序是否正确。

预部署。
获取目标环境数据库的副本。
测试 SQL 脚本

以进行部署:
停止 IIS(或最近的逻辑 IIS 对象 -Application /app pool )。
像使用“发布”功能一样促进代码更改。
备份您的目标环境数据库。
连接到目标环境的数据库并使用脚本更新架构。
重新启动 IIS

如果您愿意花时间开发所需的脚本并围绕它构建流程,那么这一切的部署都可以自动化。

正如其他人所提到的,VS.NET 2010 的 webdeploy (msdeploy) 试图使这变得更容易。我自己没有使用过这些功能。

祝你好运

I would assume that this 'limitation' is by design.

1) Typically, one does not want wo wipe out all the data that users have entered in an enviornment when a code change is made.

2) Xcopy of Database files does not work, as the file is locked by applications using it.

Is it you intention to publish the data as well?

If you want to publish just the Database changes (Updated tables/sprocs NOT data). SQL scripts would need to be generated/run against the target Database.

EDIT - Add what you can do:

You cannot use the VS.NET Publish feature.

If you want to push the data.
Stop IIS (or the cloest logical IIS object -Application /app pool ).
Copy the mdf from target to destination server.

If you NOT want to push the data (Just Schema).
During the dev cycle generate any scripts for:
data additions (ie lookup data)
table/Sproc/indexes ect updates. Be careful to have the scripts are in the right order.

Pre- deployment.
Get a copy of your target enviornment's dastabase.
Test the SQL scripts

For deployment:
Stop IIS (or the cloest logical IIS object -Application /app pool ).
Promote code changes as you would using "Publish" feature.
Backup your target enviornments database.
Connect to the target enviornment's database and update schema using the scripts.
Restart IIS

The deployment of this can all be automated if your willing to spent time developing the required sctipts and building a process around it.

As mentioned by others, VS.NET 2010's webdeploy (msdeploy) attempts to make this alot easier. I have not used these features myself.

Good luck

假装不在乎 2024-09-25 09:50:05

这是使用 Visual Studio 2010 的一大优势,

http://weblogs.asp.net/scottgu/archive/2010/07/29/vs-2010-web-deployment.aspx

因此,如果您愿意,您可以使用 Visual Web Developer 2010 Express,如果你买不起高版本。

That's a big advantage of using Visual Studio 2010,

http://weblogs.asp.net/scottgu/archive/2010/07/29/vs-2010-web-deployment.aspx

Therefore, if you like, you can use Visual Web Developer 2010 Express if you cannot afford upper editions.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文