mercoledì 31 agosto 2011

Utilizzare RRAS e NAT per ridurre il consumo di indirizzi IP delle macchine virtuali


Quando, per diletto o per esigenza, abbiamo necessità di creare un dominio di macchine virtuali sul nostro server 2008 R2 della nostra rete aziendale, possiamo incorrere in un problema se non configuriamo correttamente la parte di networking.
Infatti, se ogni macchina virtuale avesse una scheda di rete External, prenderebbe un indirizzo IP dalla Corpnet della nostra azienda. Moltiplicando questo numero per quello dei servers Hyper-V che noi e i nostri colleghi abbiamo in sala server, potremmo spesso incorrere in un esaurimento degli indirizzi IP disponibili da parte del Dhcp aziendale che serve la subnet dove c’è il nostro Hyper-v host.
La soluzione è utilizzare una macchina virtuale che funzioni da router e NAT. Tutto il traffico di rete che dalle nostre macchine virtuali necessiti di andare all’esterno, passerà tramite di essa.
image
Ad esempio consideriamo la nostra azienda, Contoso, il cui dominio è corp.contoso.com
Le nostre macchine virtuali sono tutte appartenenti al dominio interno blue.local
Tutte le schede di rete delle macchine virtuali devono essere di tipo Private e devono essere configurate ad avere come default gateway l’indirizzo IP del router relativo alla LAN interna opportuna, ad esempio:

image 
Per configurare una macchina virtuale come router, che chiameremo router.blue.local dobbiamo innantitutto aggiungere una scheda di rete Private per ogni sottorete interna del nostro dominio virtuale, più una scheda Externalda collegare alla rete Corp.
In seguito, dobbiamo installare il ruolo di Routing and Remote Access (RRAS) che si trova sotto Network Policy and Access Services.

image
image

La configurazione del RRAS è molto intuitiva. Semplicemente, dalla MMC selezioniamo tasto destro e Configure and Enable Routing and Remote Access

image

Custom configuration

image

NAT e LAN Routing

image

Successivamente, dobbiamo configurare il NAT, aggiungendo tutte le interfacce di rete del nostro router. Selezioniamo quindi NAT / New interface
image
e aggiungiamo come schede Private quelle interne e come Public quella che si affaccia su Corp (senza dimenticare il flag Enable NAT).
image
Nel mio esempio,
  • LAN 10.0.0.1 – Private interface
  • LAN 192.168.0.1 – Private Interface
  • Corpnet adapter 64.22.x.x – Public Interface with NAT enabled
Nota bene: il concetto di Private del NAT è diverso da quello di scheda Private per Hyper-V. Ulteriori dettagli sulle tipologie di Network interfaces in Hyper-V sono disponibili a http://technet.microsoft.com/en-us/library/cc816585(WS.10).aspx
A questo punto, tutte le macchine virtuali sono connesse via router con la rete aziendale.
Il modo ottimale per trasferire files da qualsiasi macchina virtuale di blue.local al nostro client fisico sucorp.contoso.com è utilizzare una fileshare sul router. Infatti, oltre che ovviamente dalle altre macchine virtuali, tale share è accessibile anche dalla rete corp, semplicemente digitando \\router\nomeshare  dal nostro client aziendale (cerchiamo di inventarci un nome macchina meno comune!) e inserendo le credenziali del dominio blue.local
Per far navigare in internet le macchine virtuali occorre che su Internet Explorer sia configurato il proxy della rete aziendale esterna, quello nel nostro caso di corp.contoso.com . Può essere comodo distribuire questo setting via GPO configurando
User Configuration / Policies / Windows Settings / Internet Explorer Maintenance / Connection / Proxy Settings

image

Infine, potrebbe non essere possibile, da una macchina virtuale del dominio blue.local , accedere a share di rete di macchine joinate al dominio corp.contoso.com se i settings di IPSEC sono impostati di Corp in modo troppo restrittivo. è invece possibile fare il contrario, cioè accedere a share di rete sul router collegandosi da macchine su Corp.
Grazie per l’attenzione e alla prossima!

martedì 30 agosto 2011

Hyper-V: problemi noti e Consigli per evitarli


Colomba da partire per AVERE dei Consigli su venire evitare Gli ERRORI Più Comuni nell'implementazione e nell'uso di Hyper-V o?
L'Articolo Hyper-V: Gotchas su TechNet Wiki e Sicuramente Un buon punto CUI partire da!
THIS PAGE riporta Una serie di Suggerimenti Utili per non incappare negligenza ERRORI Più Comuni o pere uscirne velocemente NEL Caso CI SI incappi.
Vi Consiglio di sottoscrivere il feed RSS della pagina e (perche no?) Di contribuire.
Buona giornata uno Tutti.




lunedì 29 agosto 2011

Hyper-V R2: schede di rete (NIC) che supportano Virtual Machine Queue (VMQ)


Nei giorni scorsi, via mail, mi è stato chiesto quali schede di rete presenti sul mercato supportano Virtual Machine Queue (VMQ).
VMQ è una delle novità introdotte con il rilascio di Hyper-V R2 (la versione disponibile con Windows Server 2008 R2 e Microsoft Hyper-V Server 2008 R2).
Virtual Machine Queue consente di assegnare alle macchine virtuali una coda dedicata per l’IO di rete gestita direttamente dalle schede di rete.
Questa tecnologia consente prestazioni di rete estremamente più elevate rispetto al solo uso del virtual switch.
Per sommi capi VMQ funziona in questo modo
  • La scheda di rete NIC presenta code multiple all’host fisico (di fatto delle schede di NIC virtuali)
  • Alla VM viene assegnata una coda
  • Il device buffer della VM, relativo alla scheda di rete, è assegnato alla coda
  • La NIC può copiare in DMA i pacchetti direttamente nella memoria della VM
    • Si evita di copiare i pacchetti nel VSP
    • Si evita il route lookup nel virtual switch
I benefici risiedono nella riduzione del percorso di IO dei pacchetti di rete.
image
image
(immagini originale di Ali Dabagh - Software Architect - Microsoft Corporation)
L’uso di VMQ deve essere abilitato per singola VM. Siccome l’assegnazione delle code disponibili avviene in modalità “first-come, first-served” è importante scegliere accuratamente le VM per cui abilitare questa funzionalità in modo da evitare che una coda sia assegnata ad una VM con basso traffico di rete lasciandone sfornita un’altra con traffico più elevato.
In particolare VMQ migliora le performance del traffico in ingresso ne segue che dovrebbe essere abilitato per le VM con elevato traffico in ingresso.
Qui sotto trovate un breve elenco (che non ha la pretesa di essere esaustivo) di quelle che sono riuscito a identificare.
Scheda di rete Intel
# code supportate
Ethernet Server Adapter X520 Series (SFP+)64
Ethernet Server Adapter X520-T264
10 Gigabit AF DA Dual Port Server Adapter16
10 Gigabit AT2 Server Adapter16
10 Gigabit AT Server Adapter16
10 Gigabit CX4 Dual Port Server Adapter16
10 Gigabit XF LR Server Adapter16
10 Gigabit XF SR Server Adapter16
10 Gigabit XF SR Dual Port Server Adapter16
Ethernet Server Adapter I3408
Gigabit ET Quad Port Server Adapter8
Gigabit ET Dual Port Server Adapter8
Gigabit EF Dual Port Server Adapter8
Anche le schede Emulex serie OCE11102 e Broadcom NetExtreme serie 1 e 2, a quel che mi è dato capire, supportano VMQ.
Se conoscete altre schede che supportano VMQ, vi prego a beneficio di tutti i lettori del blog di indicarle in un commento. Grazie in anticipo.



venerdì 26 agosto 2011

Casa Microsoft del futuro è Vivere il sogno


In Microsoft, sognando idee fa parte del nostro DNA. Si tratta di rendere possibile l'impossibile.Come si legge la scorsa settimana nella nostra serie chiamata Settimana Luoghi, abbiamo edifici che offrono aree di lavoro di grandi dimensioni, angoli accoglienti spazi aperti e soleggiati. Questi sono spesso i luoghi dove ci rivolgiamo i nostri sogni in possibilità.
Nessun luogo parla a questo risultato più che la Microsoft Home - uno sguardo in uno spazio di vita che può apparire come in futuro. L'idea alla base della creazione della Casa venuto da Craig Mundie, Chief Research di Microsoft e strategy officer. Fin dalla sua istituzione nel 1994, la casa è stata visitata da centinaia di migliaia di persone, tra presidenti, soci dell'azienda, e celebrità.
Causa dei vincoli di zonizzazione e la capacità, la casa è chiusa al pubblico, ma ho pensato che sarebbe bello per farvi dare un'occhiata voi stessi.

In molti modi, il futuro è già qui. E 'nella casa di oggi, dove le persone interagiscono con la gente e con la tecnologia. Vi abbiamo detto di come NUI ha giocato un ruolo importante in questa esperienza. Naturalmente l'interfacciamento con XBox Kinect, l'uso della voce, la visione e gesto ha ampliato il significato di home entertainment . E, come dimostra Microsoft Home, l'esperienza sarà solo migliorare.
I nostri amici a Microsoft News Center recentemente descritto una storia che descrive la casa in modo dettagliato e fornisce un accenno a ciò che la nostra casa dei sogni sarà - e agire - come in futuro.
Nel frattempo, continueremo a sognare.


giovedì 25 agosto 2011

La new wave dell'Industria e Certificazioni Microsoft ....


Quando ho iniziato a Microsoft di nuovo a metà del 1990, ho attraversato un campo di addestramento di sorta per ottenere il mio Windows NT 4.0 Certificazione MCSE. Io era nuovo a Microsoft di calcolo e avevano molto da imparare circa i prodotti e le tecnologie Microsoft. Le classi ho partecipato e ho ottenuto le certificazioni sono stati fondamentali per me essere in grado di fare il mio lavoro alla Microsoft, al momento - supporto telefonico basato tecnico. Senza la formazione e la certificazione che ho ricevuto, non so se avrei potuto fare il mio lavoro correttamente e quindi ancora a Microsoft circa 14 anni più tardi.
Non ero l'unico che ha certificato allora però. Un sacco di gente ha certificato circa lo stesso tempo.
Due dei fattori trainanti per le persone a ottenere la certificazione a metà degli anni '90 sono stati: 1) Il gran numero di persone l'acquisto di PC sia per lavoro che uso personale e 2) Internet. Entrambi questi ha introdotto un cambiamento importante nel modo in cui chi è abituato tecnologia informatica e ciò ha determinato una forte domanda di esperti IT gente per essere in grado di supportare tali tecnologie. Certificazione è diventato un modo per le persone di separarsi dal gruppo e dimostrare che sapevano cosa stavano parlando. Soprattutto quando si trattava di lavoro perseguendo con il gran numero di nuove aziende tech che nasce dal PC / Internet boom.
Naturalmente la bolla di Internet alla fine è scoppiato, molte persone che divenne certificati nelle tecnologie del tempo passato a non Microsoft tecnologie o anche a lavori al di fuori del settore tech. Come risultato, molte di quelle persone che permettono loro certificazioni Microsoft decadenza. Inoltre, quando si osserva il periodo di tempo che intercorre tra quando la bolla Internet spuntato e un paio di anni fa, in realtà non è stato nulla di nuovo, fresco ed emozionante per la gente di entusiasmante. Certo, c'è la "consumerizzazione dell'IT" tutta la faccenda in cui le tecnologie sviluppate per uso personale sono introdotti nel luogo di business e sicuro, i professionisti IT hanno dovuto adattarsi a questo. Non voglio minimizzare l'importanza di fare questo, ma avrei difficoltà a dire che la "consumerizzazione dell'IT" corrisponde la portata e la necessità per le persone a far decollare sulle nuove tecnologie che il PC / Internet boom degli anni 90 spinta su di noi.
Nuvole in aria ....
C'è qualcosa a venire, tuttavia, che potrebbe facilmente essere il più grande e possibile essere più grande del PC / Internet esplosione degli anni 90 - Cloud Computing. A meno che non hanno letteralmente vissuto sotto una roccia per ultimi 3-4 anni, è certamente almeno sentito il termine "cloud computing". capire esattamente che cosa è se è una questione completamente diversa.Sembra che ogni azienda la tecnologia è una definizione leggermente diversa di cloud computing. Aggiungete a ciò la sottogruppi di cloud computing (privata, pubblica, ibrido, ecc) che stiamo sentendo parlare ora, ed è facile ottenere un po 'sopraffatta e anche confuso rispetto a quale sia il cloud computing è e ciò che potrebbe significa per te.
Cloud Computing ci sta dando modo nuovo di lavorare con le tecnologie che ci consentano di fare alcune cose interessanti. Una delle promesse di Internet è stata la massiccia alla quale si potrebbe fornire informazioni e servizi. Il cloud computing è ormai ci sta dando l'opportunità di incontrare realmente tali aspettative su scala davvero globale. Di conseguenza, il paesaggio per sviluppatori e professionisti IT sta cambiando. I nuovi prodotti sono in fase di sviluppo a trarre vantaggio da questa scala e nuove tecnologie introdotte per consentirci di gestirlo. E 'possibile che noi possiamo vedere un altro Internet come esplosione di tecnologie e del settore tecnico avrà bisogno di persone che sanno quello che stanno facendo. L'industria vuole che la gente che sono certificati nelle tecnologie all'avanguardia per garantire che le persone giuste sul lavoro.
Formazione e certificazione ... ..
Microsoft sta di fronte a questa ora! Se si va alla formazione di Microsoft e il sito di certificazione, si scoprirà che in realtà stiamo raggruppando certificazioni di prodotto e tecnologia insieme per creare una fondazione per le persone che vogliono ottenere la certificazione di Microsoft "cloud computing" tecnologie . Questa è una grande risorsa per capire quali prodotti e tecnologie che abbiamo sono che una parte delle soluzioni di cloud il nostro calcolo. Ma questo non è nemmeno la parte migliore! Abbiamo anche una cosa chiamata Microsoft Virtual Academy che offre GRATIS e autodidattico di formazione che chiunque può utilizzare per iniziare a conoscere ciò che sarà necessario per ottenere la certificazione. Vi è anche formazione per le persone che utilizzano prodotti non Microsoft e volete sapere di più su quello che Microsoft ha da offrire.
Ci sono già più che un quarto di milione di persone che sono registrati sul sito, con oltre 250k autovalutazioni passato! oltre alla grande, la formazione gratuita che viene offerta, c'è un aspetto interessante di social networking che danno punti sulla base dei corsi si prende e le valutazioni si passa.
Verificare alcune delle tracce che sono disponibili -
La virtualizzazione di Microsoft per professionisti VMWare
Progettazione, costruzione e gestione di un cloud privato
Office 365 per l'IT Pro
Introduzione a Windows Azure
e molto altro ancora ... ..
Se si desidera ottenere un anticipo della curva e di ottenere la certificazione per la gestione del nubifragio imminente di tecnologie, Microsoft Virtual Academy è un ottimo punto di partenza.

mercoledì 24 agosto 2011

Toccando, salutando e parlando al futuro con Microsoft


bencohen_lg
L'ultimo messaggio della nostra serie retrospettiva prende uno sguardo indietro a uno dei progetti nostro piccolo team ha lavorato quest'anno con Channel 4 News dal Regno Unito.Abbiamo ospitato Benjamin Cohen per 2 giorni il nostro "tour underground" del campus di Microsoft. E 'una delle migliori cose che arrivare a fare a Microsoft - gli ospiti che mostrano chi siamo, dove lavoriamo e come lavoriamo, così come la loro introduzione ad alcuni dei migliori e più brillanti in azienda. A colpo sicuro, ogni persona che ha visitato ha avuto una sorta di momento "aha" quando si rendono conto che non siamo proprio la società che pensavano. A volte è un singolo progetto, altre volte è l'ampiezza del nostro lavoro che le persone sorprese (facciamo di più rispetto a Windows e Office).
Penso che Ben e la sua squadra ha fatto un grande lavoro di catturare questo e per di più, lo ha dimostrato a qualche milione di persone nel Regno Unito con un pezzo di 8 minuti su notizie in prima serata.


martedì 23 agosto 2011

La classificazione dei dati toolkit per Windows Server 2008 R2: disponibile per il download


Il Solution Accelerators squadra ha appena Annunciato la Disponibilità del dati di classificazione Toolkit per Windows Server 2008 R2 .
This tool gratuito e Pensato per aiutare le organizzazioni a, identificare e classificare proteggere i Dati PRESENTI sui propri server di file.
Le Regole predefinite, Disponibili al Termine dell'installazione, possono venire Essere Usate esempi CUI da partire per Costruire e distribuire proprie politiche per la Protezione delle Informazioni Aziendali Critiche. Resta ovviamente necessaria l'Attività Professionale degli Esperti di sicurezza per certificare la conformita delle politiche implementate Alle regolamentazioni uno CUI sottoposta e l'Organizzazione.
Il tool e delle Nazioni Unite Sicuramente Valido Aiuto per semplificare il raggiungimento della conformita Aziendale e ai Regolamenti Alle legislazioni relative alla Protezione dei Dati, in Particolare sé Usato Insieme a Manager Centro Sistema IT Service pack processo GRC gestione .




lunedì 22 agosto 2011

IE9 e tagliate sul sito nella barra delle applicazioni aka Pinned


Una delle nuove funzionalità IE9 è la possibilità del sito di attacco sulla barra delle applicazioni. Noi non pensiamo al fatto che è possibile trascinare l'icona sul pannello, ma che è possibile modificare il vostro sito o portale aziendale al fine di offrire tutte le opzioni IE9 attaccamento. Così Jumplist un elenco di compiti, attività, attivo feed RSS o link che gli utenti utilizzano più spesso.
Il risultato può essere una icona sul pannello, comportandosi quasi come applicazione con tutto ciò che va con esso. Di seguito l'anteprima tagliato blog TechNet IE9 (tra l'altro - lo sapevate che è possibile collegare il blog TechNet?). Siti che utilizzano l'allegato è già numerosi.
Se siete interessati a questa funzionalità, è sicuramente interessato nei seguenti due siti.
Pin il mio sito è una guida pratica che crea automaticamente un JavaScript in base ai parametri specificati. Questo è solo per specificare tutti i parametri e dati e risultati. Js, che poi saranno inseriti nel sito.
Appuntato Costruire mio sito è quindi per gli utenti avanzati, perché invece di guida offre descrizioni delle singole sezioni della sceneggiatura e possibili varianti. Così si scrive la sceneggiatura da soli esattamente come desiderato criteri.

lunedì 1 agosto 2011

Anteprime Microsoft SQL Server 2008 SP2


Microsoft ha rilasciato una Community Technology Preview (CTP) del prossimo service pack per SQL Server 2008.

SQL Server 2008 SP2 CTP e la versione Express Edition è disponibile . Microsoft consiglia di distribuire questa versione di prova solo in ambienti non di produzione.

Il CTP contiene gli aggiornamenti cumulativi per SQL Server 2008 SP1, fino al pacchetto di aggiornamento 8. Microsoft ha inoltre corretti alcuni problemi segnalati dai clienti con questa versione. Questo service pack contiene tre nuove aggiunte, secondo l'annuncio di Microsoft. In primo luogo, la squadra ottimizzato di SQL Server 2008 R2 Utilità, che fornisce una visione d'insieme delle risorse di sistema da parte di soggetti di modellazione. Microsoft descrive l'utilità di SQL Server in modo più dettagliato qui .


Successivamente, il service pack aggiunge il supporto a SQL Server Management Studio per i dati di livello applicazione (DAC) operazioni. Gli utenti possono creare file pacchetto DAC che contengono schema e gli oggetti a livello di server per l'utilizzo con le istanze host del database. Questo mostra come farlo utilizzando SQL Server Management Studio. Microsoft fornisce una descrizione tecnica di DAC .

Infine, il service pack contiene un componente aggiuntivo che integra server SQL Server 2008 R2 rapporto con SharePoint 2007. Microsoft dice che il componente aggiuntivo migliora la gestione delle "credenziali e origini dati condivise." Esso comprende report 3.0 e una alimentazione ATOM renderer. L'add-in "non è supportato su prodotti SharePoint 2010", secondo l'annuncio di Microsoft.

Il nuovo service pack viene eseguito su 32-bit e 64-bit di Windows, incluso Windows Server 2008, Windows Server 2008 R2, Windows Server 2003, così come Windows 7 e Vista.



Microsoft presenta Windows Small Business Server Anteprime

Da Kurt Mackie

Lunedi Microsoft ha annunciato due nuovi "anteprime" a venire per il suo Windows Small Business Server (SBS), suite di prodotti.

Le anteprime, che non sono ancora disponibili al pubblico, sono il nome in codice "SBS 7" e "SBS Aurora". Gli annunci, che probabilmente interesse partner Microsoft servizio della esigenze IT delle organizzazioni più piccole, sono state effettuate a Worldwide Partner Conference di Microsoft, succede questa settimana a Washington, DC

Le versioni di anteprima sarà recensioni pubblico, e coloro che sono interessati a scaricare e test li possono iscriversi per partecipare alla pagina di Microsoft SBS portale . Microsoft notificherà coloro che si iscrivono quando il software anteprima può essere scaricato, ma la disponibilità è stimata per la fine dell'estate, secondo un blog di Microsoft .

SBS 7 è progettato per supportare 75 utenti massimo, quindi non c'è alcun cambiamento reale nella capacità di SBS 2008, attualmente disponibile tutti i 64-bit prodotto lanciato nel novembre 2008 . Tuttavia, Microsoft prevede di aggiornare tutti i componenti in SBS da 7 a riflettere il suo stack corrente prodotto di tecnologie server. SBS 7 includerà "Windows Server 2008 R2, Exchange Server 2010 SP1, SharePoint 2010 Foundation, Windows Server Update Services 3.0 e SQL Server 2008 R2", secondo il blog. SBS 7 supporterà i dipendenti con "file e stampa, e-mail e servizi Internet", oltre a Microsoft è l'aggiunta di gestione e miglioramento della sicurezza.

SBS Aurora, invece, sosterrà massimo 25 utenti, consentendo l'accesso ai dati remoti. Microsoft è lo descrive come un "primo server" per le piccole imprese. Inoltre, SBS Aurora è descritto come "il suo primo [suite di server] per fornire funzionalità sia tradizionali e cloud", secondo il blog. A quanto pare, ciò significa che SBS Aurora sarà disponibile per le installazioni locali o accedere come un servizio, o che fornirà l'accesso ai servizi (non è proprio chiaro da post sul blog di Microsoft). SBS Aurora sarà anche funzionalità di backup automatico e ripristino e consentirà condivisione di file e stampa.

Il blog descrive "un grande interesse partner" in SBS Aurora, citando piani di integrazione con Disk Keeper, HP, le piattaforme di livello e Symantec. Microsoft prevede di rilasciare un "Windows Server Solution Software Development Kit" che consentono agli sviluppatori di "costruire componenti aggiuntivi e scrivere guidare l'integrazione di nuovi e già esistenti servizi on-line con SBS Aurora", secondo il blog. Il blog punti di questa pagina Microsoft Connect portale per l'SDK, ma al momento della stampa quella pagina solo descritto una beta firmare per SBS 7 e SBS Aurora.

Per le organizzazioni di sostegno 10 utenti max, Microsoft lanciato un beta nel mese di aprile di Windows Home Server, nome in codice "Vail", che si rivolge ai consumatori ma anche gli utenti delle piccole aziende. A differenza di SBS Aurora, il Windows Home Server Vail beta è attualmente carente di supporto per le stampanti e non ha il supporto di server terminal per l'accesso remoto.

Windows SBS faceva parte di una offerta in due parti con Windows Essential Business Server (EBS). Tuttavia, nel mese di aprile, Microsoft ucciso EBS , che è stato progettato per supportare organizzazioni di medie dimensioni da 75 a 300 utenti. Il 30 giugno, Microsoft ha concluso la disponibilità e lo sviluppo del prodotto EBS.



Corso SQL Server - Corso Hyper-V -Corso Windows Server

Certificazione Microsoft

Rilascio di SQL in Entity Framework

Se state pensando di una mossa nel mondo del LINQ e Entity Framework, è necessario considerare la possibilità che LINQ e Entity Framework non permette di rilasciare qualche dichiarazione stranamente complicato SQL. Non preoccupatevi - che dovrebbe sempre accadere, avete opzioni.

Due precisazioni prima di iniziare: Per prima cosa, in questa colonna non ho intenzione di fare uno sforzo per venire con le istruzioni SQL che non possono essere gestiti tramite LINQ. In secondo luogo, sto dando per scontato che hai già generato un modello Entity Framework (aggiunto un modello di ADO.NET Entity al progetto, collegato ad un database, e ha lavorato attraverso la procedura guidata per aggiungere alcune tabelle del modello).

Arrivare a ADO.NET in EF 1

Se si desidera recuperare i dati dal database con un'istruzione SQL arbitrario, è possibile utilizzare le informazioni memorizzate nel modello Entity Framework per l'integrazione con gli oggetti ADO.NET si ha familiarità con. Queste tre righe di codice (con queste direttive) recuperare un oggetto SQLConnection dal mio modello Entity Framework:

utilizzando System.Data.Objects; utilizzando northwndModel, utilizzando System.Data.SqlClient; utilizzando System.Data.EntityClient; using System.Data; northwndEntities ne northwndEntities = new Date (); econn EntityConnection = (EntityConnection) ne.Connection; SqlConnection sConn = (SqlConnection) econn.StoreConnection;
 

Con l'oggetto SqlConnection in mano, io sono libero di rilasciare alcuna dichiarazione SQL che voglio contro il mio database. Basta ricordare che se si fa un aggiornamento tramite ADO.NET, tutti gli oggetti già recuperati tramite Entity Framework non riflette i cambiamenti - utilizzare il metodo Refresh ObjectContext di sincronizzare i vostri soggetti con i tuoi dati. Questo esempio aggiornare alcuna oggetti Customer recuperati in precedenza con gli ultimi dati dal database:

ne.Refresh (RefreshMode.StoreWins, ne.Customers); 
Integrazione con EF 4

Ma, in Entity Framework 4, c'è un modo più semplice per eseguire query e lo si può fare in un object-oriented tipo di strada: utilizzare il metodo ExecuteStoreQuery. ExecuteStoreQuery è un metodo generico che consente di specificare una classe per contenere i dati recuperati. Il metodo creerà automaticamente tutte le istanze necessarie della classe e impostare le proprietà gli oggetti risultanti con i valori corrispondenti nomi delle colonne nei dati recuperati.

Se, per esempio, voglio aderire tabelle Clienti e Ordini insieme e recuperare il CustomerId da entrambe le tabelle (e la OrderId dalla tabella Orders), comincio con l'aggiunta di una classe con una proprietà per ogni colonna che voglio:

public class CustomerOrder {public string CustomerId; stringa pubblico OrderCustomerId; public int OrderId;} 

Ora posso eseguire un'istruzione SQL che recupera il OrderId e le due ID cliente (alias una delle colonne CustomerId in modo che possa essere utilizzato per aggiornare la proprietà a destra):

northwndEntities ne northwndEntities = new Date (); var = resESQ ne.ExecuteStoreQuery  ("SELECT Customers.CustomerID", "Orders.OrderId," + "Orders.OrderId Come OrderCustomerId" + "Da Iscriviti Ordini Clienti su" + "I clienti . CustomerId = Orders.CustomerID; "); 

Il risultato è una collezione che possono essere trattati con un ciclo foreach o manipolati con LINQ.

Le query con parametri

Se si utilizza una query con parametri, quindi è possibile passare i valori per i parametri come secondo parametro al metodo ExecuteStoreCommand. Questo esempio utilizza due parametri nella sua query:

parms [0] = "BC"; parms [1] = "Victoria"; var = resESQ  ne.ExecuteStoreQuery ("Select ..." + "Dove Regione = {0} e Città = {1}", parms); 

Questo secondo parametro può utilizzare una varietà di formati. Nell'esempio precedente ho usato la stessa delimitatori {} che il metodo Format della classe string 'utilizza. Ma è anche possibile utilizzare i parametri oggetto come questo esempio fa:

var = resESQ  ne.ExecuteStoreQuery ("Select ..." + "Dove Regione = @ p0 e City = @ P1", parms); 

Se avete familiarità con ADO.NET, probabilmente siete più comodi con l'utilizzo di oggetti SqlParameter:

SqlParameter [] parms = SqlParameter nuovo [2]; parms [0] = SqlParameter nuovo ("City", "Victoria"); parms [1] = SqlParameter nuovo ("Regione", "BC");; var = resESQ ne .  ExecuteStoreQuery ("Select ..." + "Dove Regione = @ regione e città = @ City", parms); 

E, se stai passando un solo parametro, non c'è nemmeno bisogno di creare un array per i parametri:

SqlParameter parm = SqlParameter nuovo ("Regione", "BC");; var resESQ ne.ExecuteStoreQuery =  ("Select ...." + "Dove Regione = @ Regione", parm); 
Sfruttando Entity Framework

Se stai combinando colonne da diverse classi diverse, creando una classe personalizzata è la strada da percorrere. Ma se ciò che si vuole recuperare è uno dei soggetti del modello - se nessuno dei tuoi SQL "interessante" è nel vostro clausola Select - perché non utilizzare le classi che Entity Framework ha generato per voi? Tra gli altri benefici di cui sopra, si ottiene il rilevamento delle modifiche di Entity Framework, il che significa che è possibile utilizzare Entity Framework per gestire gli aggiornamenti.

Per sfruttare le entità Entity Framework, oltre a specificare la classe da utilizzare, è necessario passare ExecuteStoreQuery il nome della (tabella) EntitySet gli oggetti provengono da e MergeOption che controlla come nuovi oggetti recuperati dal metodo sono combinate con quelle recuperate prima. Questo esempio specifica che la mia classe di entità Customer deve essere utilizzato da ExecuteStoreQuery. Una volta ho recuperato i risultati, li ho aggiornare e salvare il tutto nel database:

northwndEntities ne northwndEntities = new Date (); var = resESQ  ne.ExecuteStoreQuery ("Select * from clienti", "Clienti", System.Data.Objects.MergeOption.PreserveChanges); foreach (Customer cust in resESQ) {cust. Città = "Saqinaw";} ne.SaveChanges (); 
Manipolazione Aggiornamenti

Se il vostro "interessante" SQL è una query di aggiornamento, è possibile utilizzare il metodo ExecuteStoreCommand ObjectContext, come questo:

Si riconosce che, con ExecuteStoreCommand, hai bypassato Entity Framework quindi è necessario utilizzare il metodo Refresh per mantenere il vostro modello in sincronia con i tuoi dati.

Non si è mai possibile che avrete bisogno di questi strumenti - che LINQ e Entity Framework farà tutto il necessario. Ma è bene sapere che sono lì quando le cose iniziano a farsi "interessante".


Corso Cisco - Corsi Cisco - Corso CCNA

Corso Security - CCNA Security - Certificazione Cisco