Skoro. Silverlight aplikace se distribuují v XAP archivech, což je smečka zazipovaných DLL s jedním XML manifestem. Aplikace může požádat runtime (zavolá Application.Current.Install()), aby uživateli zobrazil dialog pro instalaci aplikace, kde uživatel jenom vybere, jestli chce ikonu na ploše nebo v nabídce Start. Appka se nainstaluje do profilu uživatele, takže nejsou potřeba admin práva. Není nutné mít .NET, stačí runtime Silverlightu. Po nainstalování pak může aplikace běžet v režimu Out of Browser, tj. má vlastní okno. V Silverlight 5 může vytvářet libovolné množství oken, v předchozích verzích to tuším nešlo, ale možná se pletu. Při spuštění aplikace kontroluje, jestli se ten XAP soubor na webu nezměnil, a pokud ano, tak si ho zaktualizuje. Dá se to dělat i programově. Silverlight dneska umí volat i COM, od verze 5 může v Out Of Browser režimu sahat na celý disk (podle práv uživatele), takže by to mělo být použitelné na většinu scénářů. Jediné omezení asi je, že tam tuším není SqlClient a obecně třídy pro přímý přístup k databázi (muselo by se jet přes COM). Počítá se s tím, že vše půjde přes WCF (mají na to nadstavbu WCF RIA Services, která řeší autentizaci, autorizaci a přístup k datům včetně filtrování, stránkování a řazení). Tohle "omezení" mi ale spíš vyhovuje, těžké klienty napojené přímo na databázi nemám moc rád.
|