ADO.NET Entity Framework (2)

Feladatunk most hozzunk létre egy üres MVC projektet egy új solutionban vagy az előzőleg elkészült solution(ADO.NET Entity Framework 1 projekt) -hoz adjunk hozzá egy MVC projektet. Én az előző posztban elkészült projekthez adom hozzá a GoogleMaps-os projektomat.

Minden előtt buildeljük a projektunkat.
MCV projektunk modell részéhez adjunk hozzá egy új item-et:
1
Típusa legyen ADO.NET EDM
2
Tovább haladva válasszuk az első-t.
3
Kattintsunk a “New Connection”-ra
4
Az előugró ablakban írjuk be a képen látható server nevét és a database nevét.
5
Ha hibával szállna el: akkor a  szerver nevét az SQL server Object Explorer-ben ellenőrizhetjük:
60
Erre a lépésre nincs szükségünk, ha mindent megcsináltunk az előző poszt alapján, és minden lefutott hiba nélkül.
Ha sikeresen beállítottuk az adatbázis és a szerver nevét OK-ézzuk le az ablakot, ezt kell hogy lássuk:
6
nextre kattintva válasszuk ki a táblázatokat:
7
Finishre kattintva az alábbi eredmény tárul elénk:
8
Eddigi utasításaink az alábbiakat hozta létre a modellben:
9
Most már a kapcsolat is megvan a “külső” adatbázisunk és az az MVC projektünk között.
Most már csak használni kell!

ADO.NET Entity Framework (1)

Hogyan hozzunk létre egy EF adatbázist?
Először telepítsük a package Manager Console-ban:
Install-Package EntityFramework
0
H
ozzunk létre egy új SQL Server Adatbázist:01
Project settings-ben a target platrofmot állítsuk MS azure-ra.
1
Adjunk hozzá egy új táblát:
2
3

T-SQL-ben írjuk meg az sql kódunkat, esetemben:
Én 3db táblát hozok létre ezek így néznek ki:
4
5
végül a két táblát összekötő tábla:
6
Hozzunk létre egy script-et, ami beszúr adatokat a táblában. Ez a script mindig lefordul, ezzel vigyázni kell:
7
Az én scriptem:
8
Futtassuk a projektunkat, végeredmény az előző képen látható kimenet:
build és deploy lefut sikeresen 0 hibával.

Google Map API V3 with MVC4 Razor

Készítettem GPS adatokat megjelenítő weboldalt. Megmutatom, hogyan lehet gyorsan és egyszerűen ugyanezt másnak is elérnie:

-Hozzunk létre egy Visual Studio 2013-al egy új webalkalmazást:
File-> new-> project
0

Válasszuk az MVC-modell-t és pipáljuk ki lent még hozzá a WEB API-t is.
1

Az index.cshtml-be(Views/Manage/index.cshtml) írjuk bele az alábbi kódot:
2

_Layoutba(Views/Shared/_Layout.cshtml) pedig a következőt: 3

Már lehet is futtatni a forráskódunkat! Fordításkor azon View-en nyomjunk fordítást, amit meg szeretnénk tekinteni, esetünkben ez az iindex.
4

Böngészőnk ezt adta eredményül.
Módosítjuk a kódunkat!
_Layout.cshtml-ben:
Initalize()-n belül:
– mapOptions-al definiálom a térkép tulajdonságait:
– center: az a pont amit középpontban látunk
-zoom: nagyítás mértéke
-Létrehozok jelőlőt is, aminek a helyét a LatLng-vel állítom be.
Állítsuk be Szegedet!
6
Létrehozok egy információs szöveget is az adott ponthoz:7

Jelenítsünk meg több gps koordinátát a térképen, úgy hogy megjelöljük őket:8
A végeredményünk:
9

Windows Universal apps

Windows 8 alatt, ha egy alkalmazást több platformra szerettünk volna kiadni, az elég sok munkával és kódduplikációval járt. Voltak ugyan különféle lehetőségek ezek javítására, de többnyire ezek is jelentős hátrányokkal jártak és egyik sem jelentett igazi megoldást. Nemcsak fejlesztői, de felhasználói oldalon is akadtak ebből fakadó kényelmetlenségek, ha ugyanannak az alkalmazásnak több felületre kiadott verzióját is használni szerettük volna. Közös fizetési rendszer híján sok probléma volt egy-egy fizetős tartalom/applikáció elérésével olyan esetekben, ha például mobilon megvettünk, majd tableten is el szerettük volna érni. Ha pedig a programunk különböző platformon futó verziói között szerettünk volna beállításokat szinkronizálni, arra legfeljebb egy külső szolgáltatáson keresztül volt lehetőségünk(pl. skydrive, amihez a felhasználó beleegyezésére is szükség volt). Mindez egy kisebb szakadékot jelentett a mobilon és tableten/pc-n futó szoftverek között.

A Windows 8.1 és a Windows universal apps egy lépéssel közelebb visznek a megoldáshoz, számos újítást és lehetőséget hoztak, amelyek megkönnyítik a Windows 8.1 és Windows phone 8.1-re történő fejlesztést.

Continue reading

Microsoft Azure Mobile Services

Sziasztok, Mészáros Tamás vagyok és első bejegyzésemben az Azure Mobile services-zel (MS) szeretnélek megismertetni benneteket.
A MS lehetőséget biztosít a fejlesztőknek, hogy alkalmazásuk mögé egy stabil, jól skálázható felhő alapú backendet állítsanak .NET, vagy Javascript alapokon. Elérhető a legelterjedtebb platformok mindegyikén, úgy is, mint iOS, Android, Windows és Mac.

Lehetővé teszi a felhasználók biztonságos beléptetését a már meglévő felhasználói fiókjaikkal, például Google, Microsoft, Facebook, vagy Twitter accounttal.
Lehetőség van továbbá személyre szabott push értesítések küldésére a felhasználóknak. Continue reading

MVC model,ASP.NET

Azoknak, akik nem jártasak az MVC model,ASP.NET környezetben:
Az alábbi videó sorozat próbál segíteni nekik:
http://channel9.msdn.com/Series/Introduction-to-ASP-NET-MVC

A videó anyag elején csak MVC-ról általánosan beszél. Amit érdemes azoknak is megnézni, akik nem .NET környezetben akarnak programozni. A sorozatban folyamatosan egymásra épülnek az anyagok. Kicsit zavaró, hogy nem mutatnak mindent amit csinálnak, de szerencsére kis idő ráfordítással kitalálható mit csináltak.

Negyedik részben kitérnek arra, hogy feltöltik az anyagokat githubra, amikkel otthonról is könnyen lehet követni az előadást, valamint jó alapot adnak a további gyakorláshoz.
Elérhetősége:
https://github.com/jongalloway/MVA-Introduction-to-ASPNET-MVC

Az előadók próbálnak lassan érthetően, egymást kiegészítve segíteni. Ami sikerül is.

Érdemes feliratkozni a Microsoft Virtual Academy-re, ahol újabb kurzusokról tájékozódhatunk.
Talán sikerorientáltabb, ha a regisztrálunk az MVA-ra és innen nézzük meg az anyagot:http://www.microsoftvirtualacademy.com/training-courses/introduction-to-asp-net-mvc
ekkor a haladásunkat a weboldal jelzi %-osan.

A „sorozat” angolul van, szerencsére be lehet kapcsolni hozzá a CC-t, amivel olvashatjuk is azt, amit éppen mond szóban.

Tartalomjegyzék:
Mod 01: Basics of MVC and the Moving Parts

Mod 02: Creating and Configuring Models

Mod 03: The Power of Visual Studio

Mod 04: Deep Dive into Controllers

Mod 05: Deep Dive into Views

Mod 06: Introduction to Bootstrap

Mod 07: Introduction to Authentication in MVC

Mod 08: Supplement Your Knowledge

A videókhoz írtam pár kiegészítő információt:

1.rész

Bevezetés, property gyors létrehozása.
Minden követhető, példákat videóval együtt lehet csinálni.

2.rész

Hibásan próbálnak létrehozni controllert, sajnos amikor a hibát kijavítják azt nem mutatják. Nekem sikerült rájönni mi a hiba úgy, hogy tovább néztem a tanagyagot.. Minden Controller létrehozása előtt futtatni érdemes a buildet! Miután rájöttem, hogy mi volt a hiba eddig újabb hiba készüld a bemutató filmben, amit nekik se sikerült megoldaniuk.

3.rész

Nekünk alig kell valamit írnunk, hiszen a Visual Studio megoldja/ megírja helyettünk a kódot. Tényleg! Eleinte nem akartam elhinni, de mindent legenerál. A videóból többet megtudhatunk
Okos kapcsolat a böngésző és a view(cshtml) között.

Minden problémámnak vége:
https://github.com/jongalloway/MVA-Introduction-to-ASPNET-MVC
Ezen az oldalon meg lehet tekinteni a forráskódokat.

4.rész

Kód nélküli részletes előadás és magyarázat a controllerről.

5.rész

Sok elmélet és magyarázás mellé kaptunk pár weboldal címet, ahol érdemes nézelődni.
ViewModel:
http://rachelappel.com/use-viewmodels-to-manage-data-amp-organize-code-in-asp.net-mvc-applications
egy másik fórum:
http://blog.geektrainer.com/

6.rész

http://jameschambers.com/2014/06/day-1-the-mvc-5-starter-project/
Néhány bootstrap:
http://bootswatch.com/
https://wrapbootstrap.com/
AngularJS:
http://channel9.msdn.com/Events/Build/2014/3-644
7.rész

Egy részletes leírás, mi is hangzik el pontosan az anyagban, kiegészítve google és twitter login-nal:
http://www.asp.net/mvc/tutorials/mvc-5/create-an-aspnet-mvc-5-app-with-facebook-and-google-oauth2-and-openid-sign-on
SSL-ről:
http://www.troyhunt.com/2011/01/ssl-is-not-about-encryption.html

8.rész
MVA oldala, milyen következő kurzusok lesznek.

Windows 8 és C++

Sziasztok,

A C++-os kliens írása közben belefutottam egy érdekes jelenségbe, amely Windows 8-on jön elő és habár elég egyszerű a megoldása gondoltam megosztom mással is hátha jól jön.

A C++ fejlesztéshez én Code:Blocks-ot használtam. A telepítés után az első hello word program futtatásánál a következő hibaüzenetet kaptam:

“HelloWorld – Debug: The compiler’s setup (GNU GCC Compiler) is invalid, so Code::Blocks cannot find/run the compiler.
Probably the toolchain path within the compiler options is not setup correctly?!
Goto “Settings->Compiler and debugger…->Global compiler settings->GNU GCC Compiler->Toolchain executables” and fix the compiler’s setup.
Skipping…
Nothing to be done (all items are up-to-date).”

A probléma megoldása a következő:

Meg kell nyitni a settings-ben található “Compiler settings…” menüpontot.

compilerMajd ezek után a “Toolchain executables” tabra navigálva meg kell nyomnunk az “Auto-Detect” gombot.

compilerSettingsEzek után már rendben fodult a kód.

 

 

CSV importálása MS SQL -be

Sziasztok,

CSV file-ok importálásával foglalkoztam MSSQL adatbázisba. Ez egy több féle képpen megközelíthető dolog. Az első amire én is rátaltam a BULK INSERTE-es megoldás ami a következő képpen néz ki:

CREATE TABLE Test
(ID INT,
FirstName VARCHAR(40),
LastName VARCHAR(40),
BirthDate SMALLDATETIME)

BULK INSERT Test
FROM ‘C:\test.csv’
WITH
(
FIRSTROW = 2,
FIELDTERMINATOR=’,’,
ROWTERMINATOR = ‘\n’
)

A “FIRSTROW” azt a célt hivatott betölteni, hogy amennyiben a csv file-unk első pár sora tartalmazza a fejlécet úgy azt ki tudjuk hagyni, különben érvénytelen adat miatt hibát kapunk. Többi megadott paraméter éretelemszerűen a separáló karaktert, valamint a sor végén használt karaktert jelezi.

Ezzel a módszerrel sajnos nekem nem sikerült, (és a fórumok alapján még sok másnak sem) megoldani az exportot.

Az általam használt és működő megoldás az volt, hogy a csv file-t lementettem .xlsx-be majd ezt importáltam a már meglévő adatbázisomba. A feltétel csupán csak annyi, hogy a fejlécnek tartalmaznia kell, az adott oszlopok neveit, tehát header + csv data. Valamint le kell tölteni és installálni az Office System Driver-t. Erről a link-ről érhető el.

Ezek után a Microsoft SQL Server Management Studio-ban az adatbázison jobb klikk majd Tasks – Import Data:
import

Majd ezek után ki kell választanunk az adatforrást ami az adott esetben Microsoft Excel valamint a file elérését.
excelDataSourceKi kell választanunk az adatbázist, hogy hova szeretnénk importálni az adatokat.

dataBaseChoose

Amennyiben a file-unk érvényes, így a következő ablakokkal találkozunk, ahol lehetőségünk van változtatni a tábla nevén és az oszlopainak beállításain.

mappingAmennyiben az adatok megfelelőek úgy lehetőségünk van rá, hogy azonnal elkezdjük a folyamatot. Ha minden rendben zajlott akkor egy hasonló ablakkal kell, hogy találkozzunk:

finish

Az adatbázis táblánk elkészült az általunk módosított/jóváhagyott paraméterek mentén.

A kész táblában viszont nincsen elsődleges azonosító, amit a következő kódrészlettel pótoltam:

addKey

Végül az adatbázis tábla kész és még elsődleges kulcsot is tartalmaz.

Visual Studio 2012 és WCF Data Service

Sziasztok!

Ebben az írásban a WCF Data Service használatáról fogok írni Visual Studio 2012-őt használva.

Amikor Visual Studio 2012-őt használva elhatároztam, hogy csinálok egy Data Service-t nagy meglepődésemre sehol nem találtam a project template-k között. Jelenleg a 2012-es verzió esetén a Data Service template még csak RTM verzióban érhető el.

A következő linkről érhető el az installer:

http://www.microsoft.com/en-us/download/details.aspx?id=35840

A célom egy OData service létrehozása volt azonban a template installálása nem oldotta meg a problémámat.

Elösször is ehhez installálnom kellet pár NuGet package-t:

  • EdmLib
  • ODataLib
  • WCF Data Services Client
  • WCF Data Services Server
  • EntityFramework

Ezek után ha létrehozunk egy Data Service-t majd megadjuk a kért ObjectContext-et elméletben az alkalmazásunk működik. Sajnos csak elméletben.

A probléma az EntityFramework új verziója amely másképp kezeli az ObjectContext-et, azonban a WCF Data Service-t erre még nem készítették fel, így nem kompatibilisek.

A megoldás:

Installálni kell egy újabb NuGet package-et:
Install-Package Microsoft.OData.EntityFrameworkProvider -Pre

Majd ezek után a Data Service osztályunk nem a DataService osztályból kell, hogy öröklődjön hanem az EntityFrameworkDataService osztályból.

Ezek után már az service képes ellátni a tényleges feladatát.

Team Foundation Service (TFS)

Az alábbi cikkben egy TFS repository elkészítését fogom röviden ismertetni.
Amennyiben szeretnénk saját repository-t készíteni csak annyi a dolgunk, hogy ellátogatunk a következő honlapra: https://tfs.app.visualstudio.com/_account/Signup ahol csupán egy repository név szükséges és egy klikkelés a “Create Account” gombra.

 

01

 

Majd ezek után az általunk megadott Account URL -re kell navigálnunk, ahol lehetőségünk nyílik készíteni egy új Team Projecte-et, illetve egy GIT projectet.

03A “New Team Project” -re kattintás után egy dialog formájában tudjuk megadni a kezdeti adatokat a projektünkhöz.

02

Majd ezek után create project és készen is van repository, és már csak meg kell nyitni a Visual Studio-t és összekapcsolni a repository-val.

A Visual Studio megnyitása után a Team – Connect to Team Foundation Server menüpontal tudjuk elkezdeni az összekötési folyamatot.

05

Utána meg kell adnunk az általunk készített repository URL-t.

07

Végül map-elnünk kell a repository-t a saját lokális gépünkre.

08

Ezek után már csak a kívánt porjekteket kell hozzáadni a solution-höz és check-in-elni a repositoryba. A TFS – t Visual Studio-ból a Team Explorer-ből tudjuk kezelni.