ASP.NET
  • Membership -> copierea unei baze de date cu membership-ul instalat
    • Trebuie copiat cel putin continutul tabelelor aspnet_Applications, aspnet_Membership, aspnet_Roles, aspnet_SchemaVersions, aspnet_Users, aspnet_UsersInRoles.
  • PageRequestManagerParserErrorException: The message received from the server could not be parsed
    • roleManager -> cacheRolesInCookie="false"
    • Mai poate fi si din cauza Response.Redirect facut de butoane din UpdatePanel. Pentru asta, ar trebui adaugat un PostBackTrigger pentru buton in colectia Triggers a UpdatePanel.
    • Vezi si
<Triggers>
    <atlas:AsyncPostBackTrigger ControlID="gvwQuestions" EventName="RowCommand" />
</Triggers>
  • Un site local nu poate fi accesat de pe alta masina
    • Trebuie adaugata o exceptie in firewall pe portul 80.
  • Convertirea unei culori din Color in HTML
    • Se foloseste clasa ColorTranslator.
  • The referenced file '/Main.Master' is not allowed on this page
    • Se inlocuieste MasterPageFile="~/Main.Master" cu MasterPageFile="../Main.Master". Chestia asta e necesara chiar daca se redefineste master-ul in codebehind.
  • Daca Server.GetLastError() intoarce null, desi stim ca a avut loc o eroare.
    • Probabil cineva (Sharepoint) a dat Clear pe eroare. O mai putem accesa prin HttpContext.Current.AllErrors.
  • SharePoint - popup-uri multiple de autentificare pentru aplicatii custom, daca rulam cu user non-admin
    • Din cate am vazut, se foloseste userul curent pentru get-uri pe css-uri, js-uri, etc. - si se intoarce ACCESS DENIED (verificabil cu ProcMon)
    • => Drepturi de Read pentru Everyone pe directorul respectiv.
    • NOTA: trebuie sa mai fie o cale, pentru ca in SharePoint nu apare problema asta - nu am stat insa sa caut.
  • HttpHandler custom / Probleme cu caching-ul
context.Response.Cache.SetCacheability(HttpCacheability.NoCache); 
context.Response.Cache.SetExpires(DateTime.Now.AddMinutes(-1));
  • HttpHandler pentru download-ul unor fisiere
    • Din cate vad, e mai bine sa fac redirect catre handler (fie de pe server, fie din javascript, folosind window.location.href) decat sa il deschid din js cu window.open
    • Am observat ca apar niste probleme in cazul in care se apeleaza de doua ori AddHeader (odata pentru content-disposition, si odata pentru filename), dar dispar in cazul unui singur apel.
context.Response.ContentType = "application/pdf";
context.Response.AddHeader("Content-Disposition", "attachment; filename=fisier.pdf");
  • Eroare: This operation requires IIS integrated pipeline mode
    • context.Response.AddHeader, in loc de context.Response.Headers.Add :)
  • Session_Start intr-un IHttpModule
        public void Init(HttpApplication context)
        {
            var session = context.Modules["Session"] as SessionStateModule;
            if (session != null)
            {
                session.Start += Session_Start;
                session.End += Session_End;
            }
        }
  • CustomSqlXXXProvider folosind connectionString custom
        public override void Initialize(string name, NameValueCollection config)
        {
            config.Remove("connectionStringName");
            config.Add("connectionStringName", ApplicationSettings.Database.ConnectionStringName);
 
            base.Initialize(name, config);
        }
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License