A következő címkéjű bejegyzések mutatása: Visual Studio. Összes bejegyzés megjelenítése
A következő címkéjű bejegyzések mutatása: Visual Studio. Összes bejegyzés megjelenítése

2012. december 20., csütörtök

Missing compiler required member 'System.Runtime.CompilerServices.ExtensionAttribute..ctor'

A címben található hibát dobta a studio, amikor fordítani akartuk az MVC application-t. Olyan gépen, amin előtte nem fordult még soha MVC-s project. Ráadásul VS 2008, 2010, 2012 is van telepítve, hogy szebb legyen.
Sokat guglizva az volt a gyanú, hogy nem jó system.core-t használ, de hiába próbáltunk ebben az irányban ki bármit. Már minden dll referenciát eltávolítottunk, újra hozzáadtunk, semmi sikerélmény. A core assembly bindingokat beállítottuk a web.configban, sőt, a target framework verziót is állítgattuk hogy hátha észhez tér. Egyszerűen nem fordult le, panaszkodott hogy nem tud mit kezdeni az extension method-okkal. Találtam néhány fura bejegyzést, ahol azt írták hogy egy új osztály létre kell hozni ezzel a tartalommal:

Nem sok reményt fűztem hozzá, de megoldotta a problémát.

2012. március 12., hétfő

Adroid fejlesztőkörnyezet összerakása

Mivel ma nekem sikerült jónéhány ponton szívni vele, megosztok egy helyes sorrendet, nekünk, windows 7 felhasználóknak, akik 64 bites gépen visual studio-val szeretnének android-ra fejleszteni.

Lépések sorrendben:

  1. Fel kell tenni a http://developer.android.com/sdk/index.html oldalról z sdk-t.
  2. Ezután jön az NDK innen:  http://developer.android.com/sdk/ndk/index.html
  3. Majd a csodálaltos ant innen:  http://ant.apache.org/bindownload.cgi
  4. JAVA sdk-ból 32 BITES KELL MINDENKÉPPEN!!!
    http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u3-download-1501626.html 
  5. Be kell állítani az environment variable-kat: JAVA_HOME ami a 32 bites jdk-ra mutasson, ANT_HOME, és ANDROID_NDK_ROOT
  6.  Ha még nincs fent a Visual Studio, tegyük fel. És megszokásból ne szedjük ki a c++-t :)
  7. Tegyük fel hozzá a  http://code.google.com/p/vs-android/ oldalról a legutolsó vs-android-ot
  8. Ha mindent jól csináltunk, és megnyitunk egy példa projektet (a vs-android zip-ben vannak), akkor le kell fordulnia.
Lehetséges szívások:
  • Ha valamelyik environment variable-t nem jól állítod be, akkor attól jön rendes hibaüzenet, viszonylag könnyen megoldható.
  • Ha az ant-et meghívva annyit mond, hogy 9020-al tért vissza a program, akkor ez annyira nem beszédes. Ilyenkor az ember nekiesik, mindent átnéz, újrarak, install, uninstall hegyek, és a végén egy eldugott fórumban megtalálható, hogy inkább a 32 bites java-t kellene használni. Vagy egy olyan crackelt 64 bitest, amibe belenyúltak hogy menjen rajta rendesen az ant.
    Ha már fent van a 64  bites, akkor kicsit macerás áttérni a 32 bitesre, mert nem elég letölteni, feltenni, kicserélni a JAVA_HOME-ot, hanem a C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Android\vs-android.EnvVars.props fileban meg kell keresni a javaHomeDir szekciót, és átírni az itt található útmutató alapján az egész részt.
És már működik is :)

2011. július 1., péntek

VS profiler

Amikor teljesítmény analizálunk, általában mindenki az adatbázissal kezdi. SQL profiler, aztán amit lehet javítgatunk.

Érdemes kipróbálni a Visual Studio saját eszközét, ami a .NET kódunk analizálására alkalmas. Nagyon hasznos, mégis kevesen ismerik és alkalmazzák (talán mert csak az ultimate-ben van benne, a professional-ből kimaradt).
Itt olvashatunk róla némi overview-t, microsoft oldalán
Ez pedig itt egy régebbi bejegyzés magyarul, ami összefoglalja hogy miért jó, hogyan működik (ez még a 2008-as studio-ról szól, de a lényeg ugyanaz a VS 2010-ben is)
Röviden tömören arra való, hogy megmondja hol gázos a kódunk, hol kell hozzányúlni.

2010. január 27., szerda

Kommentek szépen és egyszerűen - Avagy hogyan gyártsunk olvasható kódot

Egy kód ugye akkor szép, ha frankón kommentezve vagyon, és ki lehet rajta igazodni.

Namármost elég sok cuccot kipróbáltam, de kevés olyan tool/plugin van, ami a programozók életét segíti, bugmentes, nem lassítja a visual studio működését, és öröm használni. GhostDoc nem rossz, de tudomásom szerint nem lehet vele a cs fileokhoz szép és értelmes header-t generálni (mint pl lsd lejjebb).

Én találtam valamit. Még nem használtam ki minden feature-t, egyelőre örülök magamnak. DevExpress-es cucc (nem kell megijedni, lehet hogy nem minden DevExpress-es cucc bugos :) ), amit fel kell tenni, ez egy Visual Studio Plugin. Neve CodeRush Xpress (ez van ingyér). Ehhez a Plugin-hez lehet írni saját egyéb plugineket, ragyogó. De nekünk nem kell írni sajátot, szerencsére volt aki megcsinálta, codeproject-en találtam egyet, az való a kommentezésre, és ami miatt kerestem, nagyon szuper HEADER-t lehet generálni a cs fileokhoz vele. Pl most így néznek ki a cs fileokban a header-jeim:

#region Copyright(C) 2010 Crystal Clear
/////////////////////////////////////////////
// Project: CC.ECM.SPS.Components.Extender
// Namespace: CC.ECM.SPS.Components.Extender.Handlers
// Class: RichTextEditorExtender
// User: WIN-HYW10O1DBJQ\Rendszergazda
// Created: 2010.01.20. 10:40
// Modified: 2010.01.27. 23:09
/////////////////////////////////////////////
#endregion

Valamint azt is tudja (ennek Lelez örülni fog, meg én), hogy ha egy kapcsos zárójelet bezárunk, akkor kommenteli a záró tagot, hogy mely részt zárja le.
pl ami pirossal van:

protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);

if (EditorControl.Handler != null)
{
EditorControl.Handler.ForceLoad();
_editor.Content = EditorControl.Handler.HtmlData;
}
}
// OnPreRender()

Soksok szép és jó dologra való még a devexpress-es cucc is, csak lestem, pár videót megnéztem.

Itt nézelődjetek, ha valakinek van rá ideje, és érdekli, szerintem érdemes:
http://www.devexpress.com/Products/Visual_Studio_Add-in/Coding_Assistance/

Jó kis video ízelítőnek (számtalan egyéb jó video is van):
http://tv.devexpress.com/CRX91FeaturesCS.movie

Ami a jó kommentezéshez kell, jól ismert codeproject oldalon:
http://www.codeproject.com/KB/macros/commenter.aspx

Ha valaki ki akarja próbálni, 2 trükk kell commenter plugin telepítésekor, kérdezzen, segítek!

Telepítésről röviden:
Először a CodeRush Xpress-t kell feltenni, ez tök jól felmegy.
A CodeProject oldalon van 2 letölthető csomag, nem az installert kell letölteni, hanem a forrást. Azért, mert az installer egy régebbi coderush-hoz van, és nem megy fel, nem találja a megadott helyen a szükséges coderush-os dll-eket.
Leszedjük a forrást, fordításkor elszáll, no para, csak a referenciák nem stimmelnek. Egyenként kitöröljük őket, és hozzáadjuk újra (a felment a coderush, akkor megtaláljuk könnyen).
Ha ez megvan, akkor lefordítjuk, és a friss dll-t meg bemásoljuk a CodeRush mappájába, nekem ide kellett:
c:\Program Files\DevExpress 2009.3\IDETools\System\DXCore\BIN\PLUGINS\
de lehet hogy ide is kell:
c:\Program Files\DevExpress 2009.3\IDETools\System\CodeRushXpress\BIN\PLUGINS\
Ezek után, hogy a hotkey-ek működjenek, és egyáltalán a coderush options menüjét el tudjuk érni (CTRL+SHIFT+ALT+O), nem elég a Visual Studio-t elindítani, a gépet is újra kell (sajna).
Ennyi. Ezek után használható, a fent említett linkeken van szó arról, hogyan kell használni és konfigolni.


Update 1.: Találtam egy olyan feature-t, hogy ha valahol a kódban egy úgymond beégetett stringet hozol létre, felajánlja, hogy kiteszi constans-ba, választható hogy hova (pl kód elejére, private constansnak, vagy local constans, resource-ba is kirakja ha kell, ami szerintem frankón megkönnyíti a resource-ban tárolt szövegek kezelését....