Demo effect!

Demo effect: too many user = too many client = web server KO! 

Argh!

Tagged with: , , ,
Pubblicato su Uncategorized

laziness

I started to view “big bang theory” in streaming! The first step was to connect the tv to the pc with an HDMI cable: Now I could view the series comfortably lying down on my bed! IMG_20130722_204356[1]

But the problem was that… I had to get up every time to start the next episode…

mmmm maybe ..

Tagged with: , , , , ,
Pubblicato su Uncategorized

Asp.net MVC 4 CORS

To allow cross-domain in asp.net it’s enough to modify web.config file adding this configuration:

<system.webServer>

    ...
    ...
    ...
    <httpProtocol>
      <customHeaders>
        <add name="Access-Control-Allow-Headers" value="accept, maxdataserviceversion, origin, x-requested-with, dataserviceversion, Content-Type" />
        <!--<add name="Access-Control-Allow-Origin" value="*" />-->
        <add name="Access-Control-Request-Headers" value="X-Custom-Header" />
        <add name="Access-Control-Max-Age" value="1728000" />
        <add name="Access-Control-Allow-Methods" value="OPTIONS, GET, POST, PUT, DELETE" />
        <add name="Access-Control-Allow-Credentials" value="true" />
       
      </customHeaders>
      
    </httpProtocol>
    <directoryBrowse enabled="true" />
    <security>
      <requestFiltering>
        <fileExtensions>
          <add fileExtension=".json" allowed="true" />
        </fileExtensions>
        <verbs>
          <add verb="GET" allowed="true" />
          <add verb="POST" allowed="true" />
          <add verb="OPTIONS" allowed="true" />
          <add verb="DELETE" allowed="true" />
          <add verb="PUT" allowed="true" />
          <add verb="REMOVE" allowed="true" />
        </verbs>
      </requestFiltering>
    </security>
    ...
    ...
    ...

If you are using Chrome you don’t need any other configurations. If you user Safari (and iphone app built with phonegap, sencha cmd ecc..) you need to add in global.asax:


void Application_PreSendRequestHeaders(Object sender, EventArgs e)
{
     Response.Cache.SetCacheability(HttpCacheability.NoCache);
}

And in web.xml add

<authentication mode="Forms">
  <forms cookieless="UseCookies"/>
</authentication
Tagged with: , , , , , , , , ,
Pubblicato su Uncategorized

MSDTC

Ho cambiato pc e ho dovuto installare le code di win!

Inserisco il cd di xp, “Add Windows Components”, seleziono “Message Queuing” e faccio partire l’installazione..risultato:

“The Message Queuing service depends on the following nonexistent service: MSDTC!”

Inizio ad indagagare sul come risolvere il problema e trovo questo link!

Quindi eseguo “msdtc -install” e nella pagina dei servizi faccio partire il servizio Distributed Transaction Coordinator!
(Grazie Marco per l’aiuto =D )

Riprovo l’installazione ma ancora errore, sta volta però sembra un problema di configurazione.
Mi rimetto a cercare e trovo quest’altro link che spiega come impostare il MSDTC.

Per farlo basta andare su

Pannello di controllo -> Administrative Tools -> Component Service, espandere Component Service, poi Computers e selezionare le proprietà di My Computer. A questo punto selzionare la TAB MSDTC e cliccare su “Security Configuration”

Nel link di prima è indicato come impostare correttamente la security.. sarò onesto..avendone le palle piene io ho attivato qualsiasi cosa si potesse abilitare!! 😛

Tagged with: ,
Pubblicato su Uncategorized

Div & Silverlight

Ultimamente sto giocando con silverlight!

Finalmente ho integrato un oggetto SL in una mia pagina, ne invoka un JS che visualizza una tastiera digitale e.. la tastiera appare sotto il mio SL :S

Dopo un momento di terrore (sì terrore, perchè sarei stato rovinato se non si fosse potuto far nulla 😀 ) ho trovato questo post!

alla fine è più banale di quanto pensassi..e mi son risparmiato diverse ore di lavoro 😀

<asp:Silverlight ID="Xaml1" runat="server" Source="~/ClientBin/MySLPage.xap" MinimumVersion="2.0.30523" Width="100%" Height="100%" Windowless="true" />

😛

Tagged with: , , ,
Pubblicato su Uncategorized

Impedire la chiusura del browser da JS

Ho una paginaweb con dei dati modificati e voglio che questo venga notificato se si cerca di aggiornare o chiudere il browser.

Per farlo è sufficiente impostare un metodo sul onbeforeunload

<script language="javascript" type="text/javascript">
window.onbeforeunload = checkUnload;
</script>

e poi definire tale metodo (checkUnload).
function checkUnload()
{
if(IsDataChanged())
{
return ("There are unsaved changes in the page! Do you want to continue?");
}
}

Questo metodo ritorna(solo nel caso in cui i dati risultino modificati) la frase che, al momento della chiusura/aggiornamento del webbrowser, verrà proposta all’utente che dovrà scegliere se continuare o annullare!

Nel caso in cui invece i dati non siano stati modificati non ritornerà nulla e la navigazione continuerà normalmente.

Tagged with:
Pubblicato su Uncategorized

XMLNS

A volte si rende necessario importare un namespace per poter utilizzare un proprio tipo in XAML.

Se ad esempio avessimo una classe

namespace PlayWithSTYLE.Item
{
public class Person
{
public string Name { get; set; }
public string SName { get; set; }
}
}

nel caso in cui faccia parte dello stesso Assembly dello xaml per poterla utilizzare si deve aggiungere il riferimento al Namespace

(local è il prefisso per il mapping del namespace PlayWithXMLNS.Oject.Item che ci permetterà di accedere alle classi).

A questo punto possiamo utilizzare la nostra classe:

e associarla a qualche controllo

Se si vuole invece far riferimento a un namespace di una dll esterna è necessario definire anche l’assembly (in questo caso l’assembly esterno si chiama EXTClass).

Così facendo però leghiamo il XAML anche al nome dell’assembly oltre che al namespace: per evitarlo, l’assembly esterno deve definire l’attributo System.Windows.Markup.XmlnsDefinition che permette di associare un xmlNameSpace al nostro clrNamespace.

[assembly: XmlnsDefinition("MyExtClass", "EXTClass.Object.Item")]

Così ora per far riferimento al namespace EXTClass.Object.Item dell’assembly esterno EXTClass è sufficiente:

Da notare però che questo attributo funziona solo tra assembly diversi per via dell’ordine di compilazione degli elementi come spiegato qui.

Tagged with: , , ,
Pubblicato su WPF