问个问题 (ASPX文件转换成DLL给别人使用,开发工具VS2003)

zhaoxiaoyang5156 2007-10-05 04:42:13
繁體字
問個問題
如下:
如果我新建一個WEB頁面(ASPX)的話。里面做了內容。請問我如何把它封裝成一個DLL文件。可以提供給別人使用。。
如果這種方法不行。可以否提供其他的方法。
謝謝。。。希望這位仙人能指指路。。我是有一定基礎的。。但是這個東西從來沒做過。。


简体字

问个问题
如下:
如果我新建一个WEB页面(ASPX)的话。里面做了内容。请问我如何把它封装成一个DLL文件。可以提供给别人使用。。
如果这种方法不行。可以否提供其它的方法。
谢谢。。。希望这位仙人能指指路。。我是有一定基础的。。但是这个东西从来没做过。。




...全文
187 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhaoxiaoyang5156 2007-10-06
  • 打赏
  • 举报
回复
谢谢大家哈。。我用命令的方式 解决了问题。
using System;
using System.Web.UI;

namespace CustomComponents
{
/**//// <summary>
/// Summary description for CreditCardForm
/// </summary>
public class CreditCardForm1 : Control
{
protected override void Render(HtmlTextWriter writer)
{
writer.Write("<table style='width:287px;height:124px;border-width:0;'>");
writer.Write("<tr>");
writer.Write("<td><strong>Payment Method</strong></td>");
writer.Write("<td>");
writer.Write("<select name='PaymentMethod' id='PaymentMethod' style='width:100%;'>");
writer.Write("<option value='0'>Visa</option>");
writer.Write("<option value='1'>MasterCard</option>");
writer.Write("</select>");
writer.Write("</td>");
writer.Write("</tr>");
writer.Write("<tr>");
writer.Write("<td><strong>Credit Card No.</strong></td>");
writer.Write("<td><input name='CreditCardNo' id='CreditCardNo' type='text' /></td>");
writer.Write("</tr>");
writer.Write("<tr>");
writer.Write("<td><strong>Cardholder's Name</strong></td>");
writer.Write("<td><input name='CardholderName' id='CardholderName' type='text' /></td>");
writer.Write("</tr>");
writer.Write("<tr>");
writer.Write("<td><strong>Expiration Date</strong></td>");
writer.Write("<td>");
writer.Write("<select name='Month' id='Month'>");
for (int day = 1; day < 13; day++)
{
if (day < 10)
writer.Write("<option value='" + day.ToString() + "'>" + "0" + day.ToString() + "</option>");
else
writer.Write("<option value='" + day.ToString() + "'>" + day.ToString() + "</option>");
}
writer.Write("</select>");
writer.Write(" ");
writer.Write("<select name='Year' id='Year'>");
for (int year = 2005; year < 2015; year++)
{
writer.Write("<option value='" + year.ToString() + "'>" + year.ToString() + "</option>");
}
writer.Write("</select>");
writer.Write("</td>");
writer.Write("</tr>");
writer.Write("<tr>");
writer.Write("<td align='center' colspan='2'>");
writer.Write("<input type='submit' value='Submit' />");
writer.Write("</td>");
writer.Write("</tr>");
writer.Write("</table>");

base.Render(writer);
}
}
}


保存CustomComponents.cs

csc /t:library CustomComponents.cs 会生成一个DLL文件。
新建一个WEB页面。。放个Panel控件
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using CustomComponents;

namespace test
{
/// <summary>
/// WebForm6 的摘要说明。
/// </summary>
public class WebForm6 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Panel Panel1;

private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
CustomComponents.CreditCardForm1 CreditCard=new CreditCardForm1();
this.Panel1.Controls.Add(CreditCard);

}

#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}

/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);

}
#endregion
}
}

散分了。。

zhaoxiaoyang5156 2007-10-05
  • 打赏
  • 举报
回复
用VS2003
类似下面的命令的效果。用VS2003
csc /t:library MathLibrary.cs
zhaoxiaoyang5156 2007-10-05
  • 打赏
  • 举报
回复
我看相关的资料。。有说
继承Control类,重写Render方法,用HtmlTextWriter类的Write输出HTML 的做法。。
我这样做了。。但是不知道如何把这个CS文件生成DLL文件。。当然用命令的我自己会。我说直接在VS2003中如何实现。。
请大家不要叫我到BIN文件夹下去找。因为那个是整个的DLL文件。。
谢谢大侠了哈。。
原来是组件开发。。
gui0605 2007-10-05
  • 打赏
  • 举报
回复
把页面文件也做成DLL?比较强悍...不知道有没有人做过
sunlovesea 2007-10-05
  • 打赏
  • 举报
回复
直接发布网站,就会在app_code文件夹里生成dll文件了!
jeremyyang824 2007-10-05
  • 打赏
  • 举报
回复
ctrl+alt+B 编译项目 然后到bin文件夹去取出DLL,不过页面文件还是需要的,DLL里面只有cs代码
ccp5780199 2007-10-05
  • 打赏
  • 举报
回复
或者点发布向导
huyz 2007-10-05
  • 打赏
  • 举报
回复
aspx页面文件包括的是HTML代码,不需要编译;逻辑代码在代码隐藏页中,生成项目时会自动编译成DLL;部署时把代码隐藏页文件(*.aspx.cs或*.aspx.vb)删掉,只部署aspx文件和\bin文件夹。
ojekleen 2007-10-05
  • 打赏
  • 举报
回复
直接发布网站,就会在app_code文件夹里生成dll文件了!
chenzhifeng 2007-10-05
  • 打赏
  • 举报
回复
要封装只能是里面的方法封装。不能把页面也封装在DLL里面。可以把页面的方法都放到类库里面。然后生成DLL。在
其他地方要用的话只要引用一下生成后的DLL就可以了
NqIceCoffee 2007-10-05
  • 打赏
  • 举报
回复
一般都是封装成DLL,然后提供给别人

别人引用后就可以使用

62,244

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧