Tag: webforms

在ListView控件中查找控件

我想在“ListView”控件中找到ID =“Label”的“Label”控件。 我试图使用以下代码执行此操作: ((Label)this.ChatListView.FindControl(“Label”)).Text = “active”; 但我得到此exception: 对象引用未设置为对象的实例 。 这有什么不对? 这是aspx代码: <asp:Label ID="Label1" runat="server" Text= '’ >

从ASP.NET WebForms迁移到MVC

我已经阅读了很多问题和文章,说明从ASP.NET Webforms转换到MVC几乎是不可能的。 不过我认为我的情况有所不同。 我大约一年前在Webforms中愚蠢地开始创建一个项目,但我采用的方法(据我所知)非常像MVC。 我已禁用表单validation,不使用任何回发,使用URL重写,所有页面更改都是加载ContentPlaceHolders页面内容的AJAX请求(使用小型hack,覆盖RenderControl方法)。 我还在网站中引用的单独项目中使用了我自己的ORM和RESTful Service API。 现在系统运行良好,页面部分刷新正常,并且在进行ajax调用时更改了url,因此当页面刷新时,它看起来完全相同。 现在我刚刚被告知我需要为一个新的大项目学习MVC(但我必须先完成另一个项目),但我已经完成了一些关于这个主题的阅读,并启动了一些Hello World应用程序,它似乎ASP.NET MVC的想法几乎就是我已经创建的。 StackOverflow仍然建议不要将Webforms应用程序转换为MVC吗? 除了最佳实践之外,转换到MVC还有其他好处吗?

C#WebClient登录网站

我正在尝试通过提供我的(正确的)用户名和密码登录网站。 这是代码: string URL = @”https://www.t-mobile.co.uk/service/your-account/login/”; string username = “a_user”; string password = “a_password”; //ServicePointManager.Expect100Continue = false; CookieAwareClient client = new CookieAwareClient(); NameValueCollection postData = new NameValueCollection(); postData.Add(“username”, username); postData.Add(“password”, password); byte[] response = client.UploadValues(URL, postData); ASCIIEncoding enc = new ASCIIEncoding(); string Source = enc.GetString(response); 但是,令人惊讶的是,它没有登录。 我刚回到登录页面。 任何帮助将不胜感激,这是我现在的头! 谢谢,吉姆 为了完整性,这里是我的WebClient类 – public class CookieAwareClient : […]

在ASP.NET事件处理程序中使用async / await是否安全?

当我遇到这个时,我在ASP.NET中做了一些编码: protected async void someButtonClickHandler(…) { if(await blah) doSomething(); else doSomethingElse(); } 在提出这个问题之后,我对async / await如何工作有了更好的理解。 但后来让我感到震惊的是,以上面显示的方式使用async / await是否安全? 我的意思是在调用await blah之后调用者继续执行。 这意味着它可能会在await blah完成之前将响应呈现给客户端。 这是正确的吗? 如果是这种情况, doSomething() / doSomethingElse()会发生什么。 他们会被处决吗? 如果它们被执行了,用户是否会看到其更改的效果? 在我的情况下,这些方法会更改显示给用户的一些数据,但我也想知道在一般情况下会发生什么。

编写ASP.NET的月份和年份下拉列表的最佳方法是什么?

我有一个内部应用程序,我需要有两个日期类型元素的下拉列表: 月和年 。 这些值不在数据库或其他信息库中。 我知道我可以通过将它们添加到像对象这样的字典中来设置一个包含我需要的值的列表(我需要将Month与数值表示相关联,January => 01): var months = new Dictionary(); months.Add(“01”, “January”); … 今年的下拉列表将更容易,因为我可以选择一个起始年份并在通用列表中迭代到当前或当前+ 1年。 有没有更好的方法来处理这些数据元素? 内置的东西,或者我应该实现的良好设计模式?

如果是aspx文件中的语句

我有一些基本上看起来像这样的代码: This markup should not be output if Something==true. 取决于Something ,其中一个是隐藏的,这很好。 但是如果我在用户控件中设置断点,我会注意到它被加载了两次(对于上面的每个控件都加载了一次)并且它的所有逻辑都运行了两次。 我当然可以使用占位符或多视图来控制它,但同样的事情似乎适用 – OnLoad / Page_Load等对于页面上实际存在的每个控件运行一次。 编辑:我显示/隐藏这个的原因是因为我需要在控件周围包含一些标记,如果Something == true 。 我可以在控件之前和之后的if-else中包装“unique markup”本身,但这对于真正应该像我上面想象的那样简单的东西来说似乎很脏。 在这两种情况下,用户控件本身应该完全相同,对不起它具有的混乱属性。 它只是我,还是这只是一个非常不直观的界面? 并且只要它在页面上,它实际上是否可以不加载/执行用户控件?

如何使用C#从字节数组显示Web表单中的图像

这是我的代码,它只是清除网页并绘制图像,所以表格的其余部分消失了! 我需要在表单中显示图像。 这是我的用户控件来显示图像: protected void Page_Load(object sender, EventArgs e) { if (Session[“ObjHoteles”] == null) { Label1.Text = “Por favor, primero seleccione un hotel para desplegar las fotos.”; } else { if (!IsPostBack) { List ArrayFotos = new List(); string NombreDelHotel = “”; Hoteles Hotel1 = (Hoteles)Session[“ObjHoteles”]; NombreDelHotel = Hotel1.NombreHotel; ArrayFotos = Persistencia.PersistenciaFotos.FotosDeHotel(NombreDelHotel); Session[“CantFotos”] = ArrayFotos.Count(); […]

从JavaScript调用ASP.NET EventHandler

我有一个传统的ASP.NET Web窗体。 我们曾经有一个按钮定义如下: 在.aspx.cs页面中,我有以下内容: protected void myButton_Click(object sender, EventArgs e) { // Do Stuff } 但是,现在有人决定使用一个奇特的JavaScript框架。 基本上,我只有: function someJSFunction() { // Need to execute “myButton_Click” here. } 如何从这里实际在服务器上执行我的原始方法? 我知道这是一个非常奇怪的问题。 我已经简化了代码,试图直接传达我想要完成的事情。 有人可以告诉我该怎么做? 非常感谢!

填充ASP.NET页面上的表

关于表(本例中为单列)总体的简单问题。 尽管这似乎是一个简单的问题,但我从未参与过前端领域,所以就这么说了。 布局为2列8行。 就像是。 Name A LastName B Age C BirthDate D … 第1列是稳定的,如果你想要的话,“标题”不会​​改变。 A,B,C,D是查询数据库的结果。 所以,我能想到的选择是: 绘制一个2Column – 8Row表并将TextBoxes放在A,B,C,D ……字段中。 因此,稍后可以使用查询结果填充它们(此选项不是最“漂亮”的选项,因为TextBoxes使用.CSS文件改变了整个页面所吸收的设计。 设置数据网格。 我认为这里的问题是,为了以后的查询使用,必须更改一些A,B,C,D字段。 而且我不确定Datagrids是否适合这一点。 我有什么“好办法”来解决这个问题吗? 提前致谢。 编辑。 A,B,C,D数据保存在DataSet中。

如何禁用ASP.NET页面中的所有控件?

我在页面中有多个下拉列表,并且如果用户选择一个禁用全部的复选框,则要禁用所有。 到目前为止,我有这个代码,它无法正常工作。 有什么建议? foreach (Control c in this.Page.Controls) { if (c is DropDownList) ((DropDownList)(c)).Enabled = false; }