我正在使用HtmlTextWriter为我创建一些HTML。我想测试我的页面是否真的有效,但它不会渲染div。
使用System; 使用System.Collections.Generic; 使用System.Web; 使用System.Web.UI; 使用System.Web.UI.WebControls; 使用System.IO;
public partial class web_content_notes_Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
/* Configuration Start */
string thumb_directory = "img/thumbs";
string orig_directory = "img/original";
int stage_width = 600;
int stage_height = 480;
Random random = new Random();
// array of allowed file type extensions
string[] allowed_types = { "bmp", "gif", "png", "jpg", "jpeg", "doc", "xls" };
/* Opening the thumbnail directory and looping through all the thumbs: */
foreach (string file in Directory.GetFiles(thumb_directory))
{
string title = Path.GetFileNameWithoutExtension(file);
if (allowed_types.Equals(Path.GetExtension(file)) == true)
{
int left = random.Next(0, stage_width);
int top = random.Next(0, 400);
int rotation = random.Next(-40, -40);
if ((top > stage_height - 130) && (left > stage_width - 230))
{
top -= 120 + 130;
left -= 230;
}
}
//display the files in the directory in a label for testing
Label1.Text = (file);
StringWriter stringWriter = new StringWriter();
// Put HtmlTextWriter in using block because it needs to call Dispose.
using (HtmlTextWriter writer = new HtmlTextWriter(stringWriter))
// The important part:
writer.Write("<div>testing123</div>");
}
}
}
我想将各种变量添加到div中。
我该怎么做?我记得在经典的asp / vbscript中你必须将代码包装在<% code %>
中,不确定是否是ASP.NET / C#中的情况#
答案 0 :(得分:2)
我想测试我的页面是否真的有效,但它不会渲染div。
唔不,它不会。看看你在做什么:
StringWriter stringWriter = new StringWriter();
using (HtmlTextWriter writer = new HtmlTextWriter(stringWriter))
writer.Write("<div>testing123</div>");
所以,你写的是StringWriter
。然后,您正在使用该字符串编写器 nothing :文本在内存中,并且您基本上会让它被垃圾收集。
如果您想写入Page
的回复,则必须将结果写入Page.Response
。但是你应该决定是否要控制请求的响应的整个 - 在这种情况下Page
可能不是非常合适 - 或者只是一个控件,在这种情况下你应该可能是将您的代码放在自定义控件中。