• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    TENCOKACISTROMYProgramovani v C#, F# a dalsich jazycich pro .NET, Mono a ostatni CLI implementace
    NECROMAN
    NECROMAN --- ---
    ROTTWEILER: na tu jsem narazil, bohuzel jsem potreboval pokud mozno 1:1 kopii toho .NET BigIntegeru.
    NECROMAN
    NECROMAN --- ---
    SHIGORBIRDMAN: no uz to jsou tri roky :)
    BigInteger je pouze v .NET 4.0+, neni v Silverlightu, WP7-8 a ani ve Windows Runtime pro Win8 Metro appky.
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    NECROMAN: mrkve uz zase udelaly jiny framework pro mobily? :/ (biginteger snad v normalnim netu je)
    NECROMAN
    NECROMAN --- ---
    SHIGORBIRDMAN: portuji neco z .NET do WP8 a chybi mi tam trida BigInteger, ta z Mono funguje v pohode.
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    a jo, koukam ze class libraries jsou ted MIT, uz ne LGPL jak si pamatuju
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    ja myslel, ze runtime je LGPL.

    pokad je na class libraries MIT a potrebujes neco z nich, tak ok, to by nemel byt problem (coz tam vylovil zajimaveho?)
    NECROMAN
    NECROMAN --- ---
    SHIGORBIRDMAN: samotne Mono zadnou licenci nevyzaduje, jen kdybych buildoval s MonoTouch/MonoDroid/Xamarin. Navic podle tohoto je na Class Libraries MIT licence, ktera umoznuje pouziti v closed-source projektech, takze by to melo byt OK
    FAQ: Licensing - Mono
    http://www.mono-project.com/FAQ:_Licensing
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    NECROMAN: ne, pokud si neporidis licenci.
    NECROMAN
    NECROMAN --- ---
    Je tu nejaky expert na licencovani aplikace/zdrojaku? Mohu ve sve komercni closed-source aplikaci pouzit jednu tridu/soubor z projektu Mono?
    NECROMAN
    NECROMAN --- ---
    Publikoval jsem NuGet package "WP.IO" pro snadnou praci se soubory ve WP8 projektech:
    https://wpio.codeplex.com
    Je to defakto jen implementace trid FileIO a PathIO z Windows 8/WinRT, ktere nejsou z nejakeho duvodu ve WP8 API pritomne.
    Na nacteni obsahu souboru ted staci jen toto, pohoda :)
    string content = await PathIO.ReadTextAsync("ms-appdata:///local/myfile.txt");
    na zapsani dat
    await PathIO.WriteTextAsync("ms-appdata:///local/myfile.txt", "hello world");
    KRUPPI
    KRUPPI --- ---
    SIRLOON: hehe jasně na pastebinu chybí. Psal jsem to tam from scratch jen pro představu jak ten kod vypada. Zkompilovat to jde a tu vyjímku opravdu vyhazuje ta metoda PutAsync když se snaží serializovat ty data.
    SIRLOON
    SIRLOON --- ---
    KRUPPI: nechybi ti tam strednik za tim localhostem?
    KRUPPI
    KRUPPI --- ---
    Zdravím, potřeboval bych poradit s voláním http api. Konkrétně se serializací dat.

    Mám nějaký objekt Foo který nese data, která se snažím se pomocí HttpClient třídy odeslat na api který běží na PHP a akceptuje data jako FormUrlEncoded. Takže můj kód vypadá nějak takhle:

    [C#] var url = "http://localhost" var data = new Foo(); var client = new HttpClient - Pastebin.com
    http://pastebin.com/hn81L4Ct

    tohle mi vyhazuje vyjímku InvalidOperationException s tím, že:

    The configured formatter 'System.Net.Http.Formatting.FormUrlEncodedMediaTypeFormatter' cannot write an object of type 'Foo'.

    Pochopil jsem, že tenhle formáter je pouze pro to, aby web api fw dokázal bindovat právě form data na objekty a ne obráceně tak jak to potřebuji já. Zajímalo by mě tedy jak správně serializovat ty data?
    GOSHEWAN
    GOSHEWAN --- ---
    MORMEGIL: Sorry, nemam. Bylo to nejake me zmateni - napsal jsem to asi lip nez jsem si myslel [:
    MORMEGIL
    MORMEGIL --- ---
    GOSHEWAN: A opravdu tam máš spoustu velkých shodných stringů…?
    GOSHEWAN
    GOSHEWAN --- ---
    Mam dotaz na String.Intern(); - zdedil jsem aplikaci, ktera slouzi jako cache a search engine. Vyhledava v zaznamech podle jednoho jejich atributu, ktery je typu string. Musi umet 'starts with' a 'contains'.
    Puvodne pouzivala SortedDictionary<string, Item> na 'starts with' a obycejny Dictionary<string, List<Item>> na 'contains' - pregenerovala si do neho substringy.
    Ted jsem to predelal na RadixTree a nejenze to je pametove podstatne lepsi, ale vytvoreni te cache je rychlejsi. Vyhledavani je 'prijatelne' pomalejsi (ma to miliony zaznamu).

    Jadro otazky spociva v tom, ze jsem pouzival String.Intern() v domeni, ze to usetri pamet, ale pri pokusu jsem to odstranil a ukazalo se, ze pametova narocnost se vubec nezmenila (!!!). Cele se to tim podstatne zrychlilo, protoze String.Intern() je dost pomale. Jak je ale mozne, ze to zere porad stejne pameti? Nejedna se o literaly...
    NECROMAN
    NECROMAN --- ---
    Microsoft sjednotil registraci do Store - za jedno zaplaceni 19$ tedka ziskate rok pristupu jako do WP tak i do Windows 8 Store - pekne oni!
    Unifying Developer Registration: Windows and Windows Phone
    http://blogs.windows.com/...013/11/06/unifying-developer-registration-windows-and-windows-phone.aspx
    TOOMIX
    TOOMIX --- ---
    TOOMIX:

    problém se zakódováním kláves vyřešen. Kdyby se to někomu hodilo, tady je řešení, aby se s tim nemusel srát 3 dny, jako já

    Při nastavování strignu, který se má zakódovat do barkódu, se nesmí stisk kláves zadávat přímo z ASCII - například $I pro TAB nebo $M pro Enter, ale musí se do stringu dát klávesa v podobě dané tabulkou "ASCII control code chart" z http://en.wikipedia.org/wiki/ASCII Použije se sloupec označen jako C. Takže pokud do barkódu v XtraReports pošlu string ve formátu 123456$I, ze čtečky mi přijde prostý string "123456$I". Pokud tam pošlu string ve formátu 123456\t, barkód z XtraReport si to nějak interně převede a výstupem je napsání 123456 a zmáčknutí TABu.
    NECROMAN
    NECROMAN --- ---
    Kdyby byl zajem - moje slidy a demo z MS festu - tipy, tricky a hacky pro vyvoj WP8 a Windows 8.1 aplikaci:
    http://sdrv.ms/18Qxu4V
    ESY
    ESY --- ---
    na melej projekt sql express naprosto staci...

    dokud to staci vleikostne ta sql express. Nema cenu resit. Neverim ze natom pojedou neaky sileny reporty a stovky useru.. takze neres :)
    Kliknutím sem můžete změnit nastavení reklam