小编ric*_*ott的帖子

ASP.NET AJAX UpdatePanel的最佳替代解决方案

ASP.NET AJAX UpdatePanel的最佳替代解决方案,用于在没有完全回发的情况下动态添加和删除用户控件

javascript asp.net ajax controls updatepanel

10
推荐指数
1
解决办法
8839
查看次数

打破我的头,在IIS 7托管环境中获取URL路由:ASP.NET

我正在尝试使用System.Web.Routing实现ASP.NET URL路由.这似乎在我的本地主机上正常工作但是当我上线时,我收到IIS 7的404错误(找不到文件).仅供参考,主机使用Windows Server 2008 IIS7.

我认为这在处理路由机制方面有所不同.但我无法弄清楚到底发生了什么.以下是我到目前为止所做的设置和更改,以使其工作,并给自己一些信誉,它在本地工作绝对正常.

Web.Config设置

然后我有一个system.webserver部分,它具有以下标记

<system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <modules runAllManagedModulesForAllRequests="true">
      <remove name="Session" />
      <add name="Session" type="System.Web.SessionState.SessionStateModule"/>
      <add name="UrlRoutingModule"
               type="System.Web.Routing.UrlRoutingModule, 
                   System.Web.Routing, Version=3.5.0.0, 
                   Culture=neutral, 
                   PublicKeyToken=31BF3856AD364E35" />

    </modules>
    <handlers>
      <add name="UrlRoutingHandler" preCondition="integratedMode" verb="*" path="UrlRouting.axd" type="System.Web.HttpForbiddenHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    </handlers>   

</system.webServer>
Run Code Online (Sandbox Code Playgroud)

然后在Application_Start部分中,我定义了一条路由,如下所示:

void Application_Start(object sender, EventArgs e) 
{
    RegisterRoutes(RouteTable.Routes); 
}
void RegisterRoutes(RouteCollection routes)
{               
    routes.Add(
       "MyRoute",
          new Route("ProductDetail/{ProductId}/{ProductName}",
                new MyRouteHandler("~/ProductDetail.aspx")));
}
Run Code Online (Sandbox Code Playgroud)

最后MyRouteHandler看起来如下:

 public IHttpHandler GetHttpHandler(RequestContext requestContext)
 {
     var display = (Page)BuildManager.CreateInstanceFromVirtualPath(
                     _virtualPath, typeof(Page));
     HttpContext.Current.Items["ProductId"] = requestContext.RouteData.Values["Product"]; …
Run Code Online (Sandbox Code Playgroud)

c# asp.net url-routing

10
推荐指数
1
解决办法
8595
查看次数

使用jQuery Mobile的ASP.NET Response.Redirect - Url哈希

我有一个标准的表单auth ASP.NET应用程序.我的注册和登录页面与两个jQuery Mobile页面位于同一.aspx文件中.如果我回发我的ASP.NET页面,例如用户无法正确登录...等Url哈希开始一遍又一遍地追加自己.

示例网址:
http:// localhost:56644/Register.aspx?ReturnUrl =%2fDefault.aspx%3fbla%3dtest&bla = test#Register.aspx?ReturnUrl =%2fDefault.aspx%3fbla%3dtest&bla = test

一旦我的用户通过身份验证,我想在没有所有哈希信息的情况下重定向到ReturnUrl,或者在回发期间找到保留网址的方法?

标记:

<div data-role="page" id="register">
    <div data-role="content" data-scroll="true" data-theme="b" class="Content">
        ......  
        <a href='#login'>Login</a               
    </div>
</div>
<div data-role="page" id="login">
    <div data-role="content" data-scroll="true" data-theme="b" class="Content">
        .....                             
        <a href='#register' >Registered Yet?</a>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

Register.aspx上的代码隐藏:

protected void btnLogin_Click(object sender, EventArgs e)
{        
    if (LoggedIn)
    {
        FormsAuthentication.SetAuthCookie("blabla", true); 
        //Note: Request.QueryString["ReturnUrl"] = "/Default.aspx?bla=test";
        Response.Redirect(Request.QueryString["ReturnUrl"]);

    }
}
Run Code Online (Sandbox Code Playgroud)

c# asp.net jquery jquery-mobile

9
推荐指数
1
解决办法
5823
查看次数

使用ASP.NET共享托管的十大陷阱

我最近开始为我的客户使用共享主机,因此请查看项目进度或为自己使用新技术.我似乎每次部署一个在本地运行良好的新项目时,我会在共享主机上遇到新的东西.

您是否有共享主机部署清单?

部署到共享主机时遇到的常见问题是什么?

asp.net deployment hosting

8
推荐指数
1
解决办法
495
查看次数

你如何使用jQuery获取asp:RadioButton的选中值?

我需要做这样的事情:

<asp:RadioButton ID="rbDate" runat="server" Text="Date" GroupName="grpPrimary" />
Run Code Online (Sandbox Code Playgroud)

并且能够在jQuery中检查单选按钮的检查值的值,但我这样的尝试不会返回true/false.

if ($('[name=rbDate]').attr("Checked"))

if ($('[name=rbDate]').attr("Checked").val())

if ($('[name=rbDate]:checked').val())
Run Code Online (Sandbox Code Playgroud)

一点帮助?

c# asp.net jquery radio-button checked

8
推荐指数
2
解决办法
3万
查看次数

部分回发后,更新面板中的Javascript不起作用

 <script type="text/javascript">
        $(function () {
            $('.datePicker').datetimepicker({ dateFormat: 'dd/mm/yy' });
        });
    </script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="Server">
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <asp:TextBox ID="TextBox1" class="datePicker" runat="server"></asp:TextBox>
    <asp:UpdatePanel ID="holder" runat="server" UpdateMode="Always" ChildrenAsTriggers="true">
        <ContentTemplate>
            <asp:DropDownList runat="server" ID="ddl_RespondBy" AutoPostBack="true" OnSelectedIndexChanged="ddl_SelectedIndexChanged">
                <asp:ListItem Selected="True">1 Hour</asp:ListItem>
                <asp:ListItem>Other</asp:ListItem>
            </asp:DropDownList>
            <asp:TextBox ID="txt_RespondBy" class="datePicker" Visible="true" runat="server" />
        </ContentTemplate>
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="ddl_RespondBy" EventName="SelectedIndexChanged" />
        </Triggers>
    </asp:UpdatePanel>
</asp:Content>

protected void ddl_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (ddl_RespondBy.SelectedItem.Text == "Other")
        {
            txt_RespondBy.Visible = true;
        }
        else
        {

        }
    }
Run Code Online (Sandbox Code Playgroud)

我使用更新面板进行部分回发,我有两个文本框,一个在更新面板外面,一个在内部,当我从下拉列表中选择其他内容并尝试打开txt_RespondBy文本框内的日历时它没有显示,但是文本框外部更新面板显示日历.为什么Javascript在部分回发后无法在更新面板内工作

javascript asp.net jquery updatepanel ajaxcontroltoolkit

8
推荐指数
1
解决办法
1万
查看次数

将Brevity引入C#/ Java

背景

目前,如果我想new用C#或Java 创建一个对象,我输入类似于以下内容的东西:

List<int> listOfInts = new List<int>(); //C#
ArrayList<String> data = new ArrayList<String>(); //Java

C#3.0试图通过实现以下编译器技巧来提高简洁性:

var listofInts = new List<int>();

由于编译器已经知道我想创建一个特定类型的新对象(事实上我实例化它而没有为它指定null引用或指定一个特定的方法来实例化它),为什么我不能这样做以下?

    //default constructors with no parameters:
    List<int> listOfInts = new(); //c#
    ArrayList<String> data = new(); //Java
Run Code Online (Sandbox Code Playgroud)

跟进问题:

  1. 这种方法可能存在哪些缺陷.我可以遗漏哪些边缘案例?
  2. 是否有其他方法可以缩短实例化(不使用VB6-esque var)并仍保留含义?

注意:我在这样的功能中看到的主要好处之一是清晰度.让我们说var不受限制.对我来说它没用,它会从右边获得作业,为什么要这么麻烦?对我而言,New()实际上缩短了它的含义.它是一个新的()无论你声明什么,对我来说都是清晰简洁的.

c# java oop

7
推荐指数
6
解决办法
1145
查看次数

使用Windows身份验证,AJAX,ASMX和外部ISA的HTTP 401s过多

Enviornment:

  • ASP.NET WebForms
  • .NET 3.5
  • 用于AJAX的jQuery
  • ASMX Web服务
  • Windows身份验证
  • SSL

当我们运行我们的生产Web应用程序时,在获得HTTP 200之前,我们的AJAX调用通常有2-3个HTTP 401.

这是正常的吗?
有什么我们可能做错了吗?

注意:呼叫不会失败,401会尝试直到成功.

示例流量:
alt文本http://i27.tinypic.com/i5rbyf.jpg

asp.net ajax jquery asmx windows-authentication

7
推荐指数
1
解决办法
1750
查看次数

__doPostBack()后回调?

我通过调用这样的方法来刷新UpdatePanel和Javscript:

reloadDropDown = function (newValue)
{
  __doPostBack("DropDown1", "");
  selectNewValueInDropDown(newValue);
}
Run Code Online (Sandbox Code Playgroud)

在我的UpdatePanel里面是一个<select>框,我需要<option>newValue选择一个框.我的问题是我的selectNewValueInDropDown方法在__doPostBack完成之前被调用.有没有办法在调用我的selectNewValueInDropDown方法之前"等待"回发?

asp.net postback updatepanel webforms

7
推荐指数
2
解决办法
6168
查看次数

对象集合的对象初始化程序

我想看看是否有初始化的方式List<T>,其中T是一个object很像一个简单的集合被初始化?

简单收集初始化器:

List<int> digits = new List<int> { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
Run Code Online (Sandbox Code Playgroud)

对象集合启动器:

 List<ChildObject> childObjects = new List<ChildObject>
 {       
        new ChildObject(){ Name = "Sylvester", Age=8 },
        new ChildObject(){ Name = "Whiskers", Age=2 },
        new ChildObject(){ Name = "Sasha", Age=14 }
 };
Run Code Online (Sandbox Code Playgroud)

问题是,如何以及如果你能做这样的事情?

 List<ChildObject> childObjects = new List<ChildObject>
 {       
       { "Sylvester", 8} , {"Whiskers", 2}, {"Sasha", 14}
 };
Run Code Online (Sandbox Code Playgroud)

c#

6
推荐指数
1
解决办法
189
查看次数