Subscribe: DotNetGerman Bloggers
http://blogs.dotnetgerman.com/mainfeed.aspx
Added By: Feedage Forager Feedage Grade B rated
Language: German
Tags:
angular  build  das  die  für  graphql  mit  net core  net  new  preview  studio  und  version  visual studio  visual  von 
Rate this Feed
Rate this feedRate this feedRate this feedRate this feedRate this feed
Rate this feed 1 starRate this feed 2 starRate this feed 3 starRate this feed 4 starRate this feed 5 star

Comments (0)

Feed Details and Statistics Feed Statistics
Preview: DotNetGerman Bloggers

DotNetGerman Bloggers



Alle Blogs von DotNetGerman.com



Copyright: Copyright 2004-2014 DotNetGerman.com
 



Kann Microsoft HoloLens die Angst vor Strahlentherapie mindern?

Fri, 23 Jun 2017 06:57:42 Z

Kann Virtual Reality die Rehabilitation erfolgreich unterstützen? Diese und andere Fragen werden beim build.well.being. Digital Healthcare Networking Event der FH St. Pölten diskutiert. Technik revolutioniert den Healthcare-Sektor. Bei der build.well.being.-Veranstaltung wird ein Querschnitt der aktuellsten Themen im Bereich Digital Healthcare präsentiert. Wann: 30. Juni 2017, 14:00 – 17:00 Uhr Wo: FH St. Pölten, Matthias Corvinus-Straße 15, A-3100 St. Pölten Anmeldung: https://buildwellbeing.fhstp.ac.at/



Git einsetzen mit verschiedenen E-Mail Adressen

Thu, 22 Jun 2017 17:32:48 Z

Als Freiberufler bin ich regelmäßig bei verschiedenen Kunden im Einsatz. Teilweise auch parallel. Viele nutzen davon auch Git zur Versionskontrolle. Dies ist generell ein gute Entwicklung die ich beobachte.

Globale E-Mail Konfiguration

Jedoch habe ich lange Zeit in der global git config immer meine E-Mail Adresse eingetragen, ist ja so




GraphQL end-point Middleware for ASP.NET Core

Thu, 22 Jun 2017 00:00:00 Z

The feedback about my last blog post about the GraphQL end-point in ASP.NET Core was amazing. That post was mentioned on reddit, many times shared on twitter, lInked on http://asp.net and - I'm pretty glad about that - it was mentioned in the ASP.NET Community Standup. Because of that and because GraphQL is really awesome, I decided to make the GraphQL MiddleWare available as a NuGet package. I did some small improvements to make this MiddleWare more configurable and more easy to use in the Startup.cs NuGet Currently the package is a prerelease version. That means you need to activate to load preview versions of NuGet packages: Package name: GraphQl.AspNetCore Version: 1.0.0-preview1 https://www.nuget.org/packages/GraphQl.AspNetCore/ Install via Package Manager Console: PM> Install-Package GraphQl.AspNetCore -Pre Install via dotnet CLI: dotnet add package GraphQl.AspNetCore --version 1.0.0-preview1 Using the library You still need to configure your GraphQL schema using the graphql-dotnet library, as described in my last post. If this is done open your Startup.cs and add an using to the GraphQl.AspNetCore library: using GraphQl.AspNetCore; You can use two different ways to register the GraphQl Middleware: app.UseGraphQl(new GraphQlMiddlewareOptions { GraphApiUrl = "/graph", // default RootGraphType = new BooksQuery(bookRepository), FormatOutput = true // default: false }); app.UseGraphQl(options => { options.GraphApiUrl = "/graph-api"; options.RootGraphType = new BooksQuery(bookRepository); options.FormatOutput = false; // default }); Personally I prefer the second way, which is more readable in my opinion. The root graph type needs to be passed to the GraphQlMiddlewareOptions object, depending on the implementation of your root graph type, you may need to inject the data repository or a EntityFramework DbContext, or whatever you want to use to access your data. In this case I reuse the IBookRepository of the last post and pass it to the BooksQuery which is my root graph type. I registered the repository like this: services.AddSingleton(); and needed to inject it to the Configure method: public void Configure( IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory, IBookRepository bookRepository) { // ... } Another valid option is to also add the BooksQuery to the dependency injection container and inject it to the Configure method. Options The GraphQlMiddlewareOptions are pretty simple. Currently there are only three properties to configure RootGraphType: This configures your GraphQL query schema and needs to be set. If this property is unset an ArgumentNullException will be thrown. GraphApiUrl: This property defines your GraphQL endpoint path. The default is set to /graph which means your endpoint is available under //yourdomain.tld/graph FormatOutput: This property defines whether the output is prettified and indented for debugging purposes. The default is set to false. This should be enough for the first time. If needed it is possible to expose the Newtonsoft.JSON settings, which are used in GraphQL library later on. One more thing I would be happy, if you try this library and get me some feedback about it. A demo application to quickly start playing around with it, is available on GitHub. Feel free to raise some issues and to create some PRs on GitHub to improve this MiddleWare.[...]






Von Callbacks zu Promises

Wed, 21 Jun 2017 09:13:00 +0200

Die vor einigen Wochen veröffentlichte Version 8.0.0 von Node unterstützt die beiden neuen Schlüsselwörter async und await. Sie funktionieren allerdings nur mit Funktionen, die Promises zurückgeben – nicht mit Callbacks. Wie kommt man möglichst einfach aus der einen in die andere Welt?



IEC 61131-3: Additional language extensions

Sat, 17 Jun 2017 08:38:00 Z

The focus of my post has been the object-oriented extensions so far. But there are several general, usually not so far-reaching innovations within TwinCAT 3. Below, they are briefly described. Array initialization If a declared array has to be initialized, the list with the initialization values should be set into square brackets. So far, the […](image)



LEGO® Robotik: Neues Projekt online

Fri, 16 Jun 2017 21:08:25 Z

Nach langer Zeit gibt es mal wieder einen Blogpost von mir. 🙂 Allerdings auch nur einen ganz kleinen, in dem ich Ankündigen möchte, dass ab nun alle LEGO®-Robotik-Themen auf https://www.legorobotik.de anzutreffen sind. Ich werde die bestehenden Beiträge auf diesem Blog nicht löschen oder auf LEGO® Robotik neu veröffentlichen, aber neue Beiträge zu diesem Thema dürft […](image)



Gelesen: "Eine kurze Geschichte der Menschheit"

Wed, 14 Jun 2017 10:38:00 +0200

Der israelische Historiker Yuval Noah Harari hat ein Buch geschrieben, in dem er den Aufstieg des Homo Sapiens beschreibt, von der Urzeit bis zur Gegenwart. Das klingt zunächst nach einem spröden Geschichtsbuch. Doch das Gegenteil ist der Fall …



TFS 2017 Update 2 (RC1)

Wed, 14 Jun 2017 09:38:47 Z

Für den Visual Studio Team Foundation Server, TFS (die lokale Variante der Visual Studio Team Services, VSTS) kommt ein eher ungewöhnlich großes Funktionsupdate. Derzeit ist das Update 2 als Release Candidate verfügbar. Viele neue Funktionen, wie zum Beispiel die Delivery Plans, werden nun auch im Server verfügbar. Wie immer gilt, die Visual Studio Team Services...



pwnwin – die eSports Plattform für Alle

Tue, 13 Jun 2017 14:38:22 Z

pwnwin, die weltweit führende Plattform für eSports Wettbewerbe mit über 100.000 aktiven Nutzern monatlich, hat soeben ihren Marketplace eröffnet. Wir haben pwnwin im Dezember 2015 in Mondsee gegründet und uns zum Ziel gesetzt, den Markt für eSports Wettbewerbe zu erobern. Mit weltweit über 700.000 registrierten Benutzern und über 100.000 monatlich aktiven Benutzern sind wir auch...



Abhängigkeiten reduzieren

Mon, 12 Jun 2017 14:16:06 Z

Abhängigkeiten sind das Grundübel der Softwareentwicklung. Viele Entwickler nehmen sie als gegeben hin. Doch wir können Abhängigkeiten so reduzieren, dass Testbarkeit, Lesbarkeit und damit die Wandelbarkeit deutlich verbessert werden.

Der Beitrag Abhängigkeiten reduzieren erschien zuerst auf Refactoring Legacy Code.




Podcast für Fachinformatiker

Sun, 11 Jun 2017 07:41:38 Z

Stefan Macke präsentiert schon einige Zeit seinen Podcast für Fachinformatiker Anwendungsentwicklung. Er hat mich zum Thema Clean Code Developer interviewt.

Der Beitrag Podcast für Fachinformatiker erschien zuerst auf Refactoring Legacy Code.




Dependency Manager – Abkündigung der XAML-Build-Aktivitäten

Thu, 08 Jun 2017 16:03:21 Z

Das neue Build-System in Visual Studio Team Services (VSTS) bzw. im Team Foundation Server (TFS) gewinnt immer mehr an Bedeutung. Deshalb haben wir uns nach reiflicher Überlegung entschieden, die Unterstützung der XAML-Build-Aktivitäten CleanDependencies und GetDependencies im AIT Dependency Manager abzukündigen. An der aktuellen Produktversion ändert sich nichts, alles funktioniert wie gewohnt. Bei zukünftigen Releases werden wir […]



WiX: Automatische Fragmenterzeugung mit Heat

Thu, 08 Jun 2017 07:00:53 Z

Das WiX Toolset ist ein mächtiges Werkzeug um Installationsroutinen mit Hilfe von XML zu erzeugen. Herzstück eines WiX Projektes ist das Product Element. Innerhalb diesem werden die Elemente der Installationsroutine definiert. Um außerhalb des Product Elements Installationselemente wie Components oder Directorys zu definieren wird ein Fragment Element benötigt, in welchem die einzelnen Elemente angelegt werden. […]



Feststellen der .NET-Version

Thu, 08 Jun 2017 06:39:00 +0200

Eine ältere .NET-Anwendung startet ohne weiteres auf einem neueren .NET 4.x, könnte aber im Ablauf Probleme bekommen. Wer prüfen will, ob die .NET-Version, für die die Anwendung kompiliert wurde, der installierten .NET-Version entspricht, kann folgenden C#-Code verwenden.



Alles neu macht der Mai: Neuerungen in npm 5

Wed, 07 Jun 2017 09:33:00 +0200

Vor einigen Tagen ist Node 8.0 erschienen, das die Basis für die künftige LTS-Version der JavaScript-Laufzeitumgebung darstellt. Zusätzlich enthält Node auch die neue Version 5 der Paketverwaltung npm. Was hat sich hier getan?



C3 Loyalty Services – die neue Kunst der Kundenbindung

Tue, 06 Jun 2017 12:35:28 Z

Was macht C3 Loyalty Services? Das österreichische Unternehmen C3 Loyalty Services entwickelt einen neuen und innovativen CRM-Ansatz, mit dem insbesondere international agierende Handelskonzerne den vielschichtigen Herausforderungen der Digitalisierung begegnen können. Die dringend notwendige und aktuell stark diskutierte „digitale Transformation“ im stationären Handel hat einen entscheidenden Einfluss auf das zukünftige Kundenbeziehungsmanagement – und somit auf die...



//BUILD on Tour Neuigkeiten für Devs und IT-Pros – UPDATE

Mon, 05 Jun 2017 11:30:39 Z

WANN: 21. Juni 2017 | 08:30 Uhr - 17:30 Uhr WO: Microsoft Österreich, Am Euro Platz 3, 1120 Wien UPDATE - FINAL AGENDA!



Shrinking Angular Bundles with Closure

Sat, 03 Jun 2017 00:00:00 +0100

p a { text-decoration: underline; } Big thanks to Alex Eagle from the Angular Team and to Carmen Popoviciu for reviewing this post. Closure is said to be the most sophisticated JavaScript compiler available today. Its advanced optimization mode goes far beyond the tree shaking capabilities of other tools and allows for shrinking bundles to a minimum. Google uses it to improve the performance of its own products like Google Docs and even Microsoft is using it meanwhile for Office 365. However, it's considered to be an expert tool and therefore difficult to configure. In addition to that, it assumes that the underlying JavaScript code has been written in a specific way. Currently, the Angular team is working hard on making Angular work together with Closure as well as with its build tool Bazel. There are some first examples available, e. g. the Example Alex Eagle from the Angular Team created. This post uses the mentioned example to show how to use the Closure compiler as well as the advantages it brings regarding bundle sizes. Furthermore, this post explains how to add own and existing packages to a Closure based project. Building a base line with the Angular CLI In order to create a baseline for comparing Closure with a 'traditional' build task for Angular, let's create a new Hello World application with the Angular CLI: ng new baseline cd baseline Now, let's create a production build: ng build --prod The generated bundles have a size of about 394K: 1.460 inline.093de888567e5146835d.bundle 9.360 main.0d097609144c942cc763.bundle 60.845 polyfills.d90888e283bda7f009a0.bundle 322.320 vendor.765bef7fc0b73d2d51d7.bundle 393.985 Bytes As the Closure sample in the next sections is directly importing the zone polyfill and not importing any other ones, we should omit the polyfills bundle from this observation: 1.460 inline.093de888567e5146835d.bundle 9.360 main.0d097609144c942cc763.bundle 322.320 vendor.765bef7fc0b73d2d51d7.bundle 333.140 Bytes This leaves about 333K. After this we are installing Angular Material as well as the Animation package which Angular Material depends on: npm i @angular/material --save npm i @angular/animations --save To import it into the application, its AppModule is referencing some of Angular Material's Modules: import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core'; import { FormsModule } from '@angular/forms'; import { HttpModule } from '@angular/http'; import { AppComponent } from './app.component'; import { MdButtonModule, MdAutocompleteModule, MdCheckboxModule, MdDatepickerModule, MdCardModule, MdRadioModule, MdChipsModule, MdListModule, MdSnackBarModule, MdSliderModule, MdDialogModule, MdMenuModule, MdSidenavModule } from '@angular/material'; @NgModule({ imports: [ BrowserModule, FormsModule, HttpModule, MdButtonModule, MdAutocompleteModule, MdCheckboxModule, MdDatepickerModule, MdCardModule, MdRadioModule, MdChipsModule, MdListModule, MdSnackBarModule, MdSliderModule, MdDialogModule, MdMenuModule, MdSidenavModule ], declarations: [ AppComponent ], providers: [], bootstrap: [AppComponent] }) export class AppModule { } After recreating a production build (ng build --prod) we see that it grew to about 951K: 1.460 inline.36030f130bb8b4d4d1e6.bundle 246.959 main.bd55167e3a85bc1edaab.bundle 702.496 vendor.9618c29d7fbb7af5a536.bundle 950.915 Bytes As the bundle size increased even though we are[...]



DevOps mit Microsoft Azure (für Partner)

Thu, 01 Jun 2017 18:42:01 Z

Die Kollegen von Microsoft Central & Estern Europe bieten ein kostenloses Partner-Onlinetraining zum Thema DevOps mit Microsoft Azure an. Das Online-Training wird in englischer Sprache abgehalten:   Date:               6, June 2017 Time:               11:30-13:30 (GMT+2) Registration:  https://www.microsoftevents.com/profile/form/index.cfm?PKformID=0x2108488a43c Training Agenda First part: What is DevOps? Using “the cloud” as a development tool Visual Studio for DevOps How...



Entity Framework SaveChanges beschleunigen

Thu, 01 Jun 2017 10:19:50 Z

SaveChanges eines Entity Framework-Kontextes ist gerade bei vielen Änderungen oder vielen Inserts sehr langsam. Dieser Artikel zeigt Optimierungsmöglichkeiten auf.

The post Entity Framework SaveChanges beschleunigen appeared first on Norbert Eder.




Moderne Security-Lösungen mit Angular, OAuth 2 und OpenID Connect: Folien und Beispiel von XPC 2017 (München, Online)

Thu, 01 Jun 2017 00:00:00 +0100

Nachfolgend meine Folien und mein Beispiel von der XPC 2017:




package.json: ~ versus ^

Wed, 31 May 2017 11:09:00 +0200

Node verwendet das Konzept des Semantic Versioning für die Versionierung von Modulen. Bei Bedarf lassen sich in der Datei package.json dafür auch Bereiche angeben, beispielsweise mit den Zeichen ~ und ^. Was ist der Unterschied zwischen den beiden Varianten?



Extend your Xamarin.Android app with OpenStreetMap

Wed, 31 May 2017 00:00:00 Z

In my last post I described how you can use OpenStreetMaps within your Xamarin.iOS app. Please read that article first, if you don't know what OpenStreetMaps is. Today I show you how you can make use of OpenStreetMaps in your Xamarin.Android app.



A first glimpse into .NET Core 2.0 Preview 1 and ASP.​NET Core 2.0.0 Preview 1

Tue, 30 May 2017 00:00:00 Z

At the Build 2017 conference Microsoft announced the preview 1 versions of .NET Core 2.0, of the .NET Standard 2.0 and ASP.NET Core 2.0. I recently had a quick look into it and want to show you a little bit about it with this post. .NET Core 2.0 Preview 1 Rich Lander (Program Manager at Microsoft) wrote about the release of the preview 1, .NET Standard 2.0, tools support in this post: Announcing .NET Core 2.0 Preview 1. It is important to read the first part about the requirements carefully. Especially the requirement of Visual Studio 2017 15.3 Preview. At the first quick look I was wondering about the requirement of installing a preview version of Visual Studio 2017, because I have already installed the final version since a few months. But the details is in the numbers. The final version of Visual Studio 2017 is the 15.2. The new tooling for .NET Core 2.0 preview is in the 15.3 which is in preview currently. So if you want to use .NET Core 2. preview 1 with Visual Studio 2017 you need to install the preview of 15.3 The good thing is, the preview can be installed side by side with the current final of Visual Studio 2017. It doesn't double the usage of disk space, because both versions are able share some SDKs, e.g. the Windows SDK. But you need to install the add-ins you want to use for this version separately. After the Visual Studio you need to install the new .NET Core SDK which also installs NET Core 2.0 Preview 1 and the .NET CLI. The .NET CLI After the new version of .NET Core is installed type dotnet --version in a command prompt. It will show you the version of the currently used .NET SDK: Wait. I installed a preview 1 version and this is now the default on the entire machine? Yes. The CLI uses the latest installed SDK on the machine by default. But anyway you are able to run different .NET Core SDKs side by side. To see what versions are installed on our machine type dotnet --info in a command prompt and copy the first part of the base path and past it to a new explorer window: You are able to use all of them if you want to. This is possible by adding a "global.json" to your solution folder. This is a pretty small file which defines the SDK version you want to use: { "projects": [ "src", "test" ], "sdk": { "version": "1.0.4" } } Inside the folder "C:\git\dotnetcore", I added two different folders: the "v104" should use the current final version 1.0.4 and the "v200" should use the preview 1 of 2.0.0. to get it working I just need to put the "global.json" into the "v104" folder: The SDK Now I want to have a look into the new SDK. The first thing I do after installing a new version is to type dotnet --help in a command prompt. The first level help doesn't contain any surprises, just the version number differs. The most interesting difference is visible by typing dotnet new --help. We get a new template to add an ASP.NET Core Web App based on Razor pages. We also get the possibility to just add single files, like a razor page, "NuGet.config" or a "Web.Config". This is pretty nice. I also played around with the SDK by creating a new console app. I typed dotnet new console -n consoleapp: As you can see in the screenshot dotnet new will directly download the NuGet packages from the package source. It runs dotnet restore [...]



Using Visual Studio Code & Team Foundation Version Control (TFVC)

Mon, 29 May 2017 23:45:00 Z

Recently we start working on a Angular 4 app but all other parts of the application (e.g. the backend stuff) were stored in a good old TFVC based repository (inside a Team Foundation Server 2015) . Unfortunately building an Angular app with the full blown Visual Studio with the “default” Team Explorer workflow is not really practical. Another point for using Visual Studio Code was that most other online resources about learning Angular are using VS Code. Our goal was to keep one repository, otherwise it would be harder to build and maintain. First plan: Migrate to Git First we tried to migrate our complete code base to Git with this generally awesome tool. Unfortunately for us it failed because of our quite large branch-tree. I tried it on a smaller code base and it worked without any issues. At this point we needed another solution, because we wanted to get started on the actual application - so we tried to stick with TFVC. Important: I always would recommend Git over TFVC, because it’s the way our industry is currently moving and at some point in the future we will do this too. If you have similar problems like us: Read on! Second plan: Get the TFVC plugin working in Visual Studio Code Good news: Since April 2017 there is a Visual Studio Team Services extension for Visual Studio Code that also supports TFVC! Requirements: Team Foundation Server 2015 Update 2 A existing local workspace configuration (at least currently, check this GitHub issue for further information) The actual extension Be aware: Local Workspaces! Even I’m using TFS since a couple of years I just recently discovered that the TFS supports to different “workflows”. The “default” workflow always needs a connection to the TFS to checkout files etc. There is an alternative mode called “local” mode which seems to work like SVN. The difference is, that you can create a local file and the TFVC-client will “detect” those changes. Read more about the differences here. Configuration In our OnPremise TFS 2015 world I just needed only this configuration line in my user settings: ... "tfvc.location": "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Professional\\Common7\\IDE\\CommonExtensions\\Microsoft\\TeamFoundation\\Team Explorer\\TF.exe", ... Action! Now when I point VS Code to my local workspace folder, the TFVC plugin will kick in and I see the familiar “change”-tracking: It is not perfect, because I still need to setup and “manage” (e.g. get the history etc.) via the full blown Visual Studio, but with this setup it is “do-able”.[...]



Leere Ordner löschen – ganz einfach mit der Windows PowerShell

Mon, 29 May 2017 07:52:00 +0200

Mit einem PowerShell-Skript kann man in einem Dateisystempfad rekursiv nach leeren Verzeichnissen suchen und diese löschen.



Exploring GraphQL and creating a GraphQL endpoint in ASP.NET Core

Mon, 29 May 2017 00:00:00 Z

A few weeks ago, I found some time to have a look at GraphQL and even at the .NET implementation of GraphQL. It is pretty amazing to see it in actions and it is easier than expected to create a GraphQL endpoint in ASP.NET Core. In this post I'm going to show you how it works. The Graph Query Language The GraphQL was invented by Facebook in 2012 and released to the public in 2015. It is a query language to tell the API exactly about the data you wanna have. This is the difference between REST, where you need to query different resources/URIs to get different data. In GrapgQL there is one single point of access about the data you want to retrieve. That also makes the planning about the API a little more complex. You need to think about what data you wanna provide and you need to think about how you wanna provide that data. While playing around with it, I created a small book database. The idea is to provide data about books and authors. Let's have a look into few examples. The query to get the book number and the name of a specific book looks like this. { book(isbn: "822-5-315140-65-3"){ isbn, name } } This look similar to JSON but it isn't. The property names are not set in quotes, which means it is not really a JavaScript Object Notation. This query need to be sent inside the body of an POST request to the server. The Query gets parsed and executed against a data source on the server and the server should send the result back to the client: { "data": { "book": { "isbn": "822-5-315140-65-3", "name": "ultrices enim mauris parturient a" } } } If we want to know something about the author, we need to ask about it: { book(isbn: "822-5-315140-65-3"){ isbn, name, author{ id, name, birthdate } } } This is the possible result: { "data": { "book": { "isbn": "822-5-315140-65-3", "name": "ultrices enim mauris parturient a", "author": { "id": 71, "name": "Henderson", "birthdate": "1937-03-20T06:58:44Z" } } } } You need a list of books, including the authors? Just ask for it: { books{ isbn, name, author{ id, name, birthdate } } } The list is too large? Just limit the result, to get only 20 items: { books(limit: 20) { isbn, name, author{ id, name, birthdate } } } Isn't that nice? To learn more about GraphQL and the specifications, visit http://graphql.org/ The Book Database The book database is just fake. I love to use GenFu to generate dummy data. So I did the same for the books and the authors and created a BookRepository: public class BookRepository : IBookRepository { private IEnumerable _books = new List(); private IEnumerable _authors = new List(); public BookRepository() { GenFu.GenFu.Configure() .Fill(_ => _.Name).AsLastName() .Fill(_=>_.Birthdate).AsPastDate(); _authors = A.ListOf(40); GenFu.GenFu.Configure() .Fill(p => p.Isbn).AsISBN() .Fill(p => [...]



Microsoft Envision Workshop: Innovation in Entwicklung mit Microsoft Azure

Fri, 26 May 2017 08:58:06 Z

Datum: Donnerstag, 29. Juni 2017 | 09:00 - 12:30 Uhr Ort: Microsoft Österreich GmbH Zentrale, Am Euro Platz 3, 1120 Wien Jetzt kostenlos registrieren!



Gelesen: "Zero to One"

Wed, 24 May 2017 09:53:00 +0200

Der US-amerikanische Investor und Unternehmer Peter Thiel, der unter anderem PayPal und Palantir gegründet hat, hat ein Buch geschrieben: "Zero to One". Darin beschreibt er, warum Technologie und nicht Globalisierung die treibende Kraft für die Zukunft ist und worauf beim Aufbau eines Start-ups zu achten sei.



Einstieg in Azure Resource Manager

Tue, 23 May 2017 17:12:50 Z

Moderne Applikationen, die in Azure gehostet werden, bestehen aus vielen verschiedenen Komponenten / Services, die untereinander kommunizieren, Daten austauschen und zwischen denen eine mehr oder minder große Abhängigkeit besteht. Schon einfache Anwendungen bestehen aus einer Datenbank, einem Cache, einer API, einer Webseite usw.  – also vielen einzelnen Komponenten, die gemanaget sein wollen. Azure Portal Um … Weiterlesen Einstieg in Azure Resource Manager (image)



5 kostenlose eBooks über Machine Learning

Tue, 23 May 2017 09:15:03 Z

Tagtäglich erscheinen Artikel zu Thema Künstliche Intelligenz bzw. Machine Learning. Was hat das aber mit UI-Design und...



Next Generation Apps am Mobile Developer After Work Nr 15

Tue, 23 May 2017 07:20:00 Z

Das nächste Mobile Developer After Work findet diesmal an der FH St. Pölten am 8. Juni 2017 statt und steht ganz im Zeichen der nächsten Generation von innovativen Apps.



Nach Update: Sharing von Laufwerken mit Docker nicht mehr möglich

Mon, 22 May 2017 12:14:41 Z

Das Problem Ich setze Docker schon eine ganze Weile sowohl privat, als auch beruflich für die unterschiedlichsten Themen ein und bin mit dem Tooling unter Windows mittlerweile sehr zufrieden. Docker integriert sich unauffällig in das Windows Betriebssystem und läuft in der Regel reibungslos. Vor kurzem wurde jedoch nach einem Windows Update beim Start eines Containers, … Weiterlesen Nach Update: Sharing von Laufwerken mit Docker nicht mehr möglich (image)



Mai Update der PowerShell Community in Österreich

Mon, 22 May 2017 05:15:00 Z

Kommende Veranstaltungen im Überblick: 23. Mai 2017 Experts Live Café Wien 8. Juni 2017 Experts Live Café Linz 24. Juni 2017 - Kostenloser Einsteigerworkshop 23. August 2017 – 25.8.2017 Experts Live Europe November 2017 – Spezieller Eintagesevent



Der .NET Stammtisch Linz öffnet seine Pforten

Fri, 19 May 2017 11:30:11 Z

Für alle .NET Begeisterten im Großraum Linz gibt es eine gute Nachricht. Ab sofort, genauer 23.5., gibt es einen NET Stammtisch. Also ein Meetup für das Thema .NET mit allem was dazugehört, egal ob es sich um Azure, Xamarin oder andere dazu passende Themen handelt. Der erste .NET Stammtisch Linz startet am 23. Mai um 18:30 bei Dynatrace



Out of Memory Exception beim EF Debuggen im IIS Express

Thu, 18 May 2017 17:29:50 Z

Bisher noch nie vorgekommen, aber es gibt immer ein erstes mal. Heute hatte ich beim Abrufen großer Datenmengen um einen Cache zu befüllen auf einmal eine “Out of Memory” Exception, obwohl mein Visual Studio vom RAM her sehr gut aussah und auch noch genug RAM zur Verfügung stand. Leider gibt die Fehlermeldung auch nicht mehr […](image)



JavaScript schöner machen

Wed, 17 May 2017 10:37:00 +0200

Ein schöner Aspekt von Go ist, dass die Sprache vorgibt, wie Code zu formatieren ist. Diskussionen über die Optik von Code gehören damit der Vergangenheit an. Für JavaScript steht mit prettier seit Kurzem nun auch ein Modul zur Verfügung, das die Formatierung vorgibt.



Die Build-Nachrichten in der Kurzzusammenfassung

Wed, 17 May 2017 00:04:00 +0200

Vom 10. bis 12. Mai fand in Seattle Microsofts Entwicklerkonferenz Build 2017 statt mit Neuigkeiten zu .NET, Visual Studio, Azure, PowerShell und Windows.



ngModel like two-way-databinding für Komponenten in Angular

Mon, 15 May 2017 19:48:19 Z

Da es sich bei Angular nur noch im Komponenten handelt, ist es hier natürlich auch wichtig wie man Daten an Komponenten weitergibt und auch wieder zurückgeben kann. Dafür gibt es zwei wichtige Dekoratoren “@Input” um Daten an eine Komponenten zu übergeben und “@Output“ um Daten wieder “zurückzugeben”. Um ein two-way-databinding zu erstellen gibt es mindestens […](image)



Einführung in Node, Folge 18: Eigene Streams schreiben

Mon, 15 May 2017 10:27:00 +0200

Zusätzlich zu den in Node integrierten Streams lassen sich auch eigene schreiben. Zur Wahl stehen außer les- und scheibbaren Streams auch die sogenannten Transform-Streams, die Daten verändern und aggregieren können. Wie funktioniert das?



Pushing Azure IoT to the Edge @ MSBuild 2017

Mon, 15 May 2017 07:31:34 Z

Die Keynotes der ersten beiden Tage waren voller Highlights. In den folgenden Breakout-Sessions werden einige Ankündigungen im Detail vorgestellt. Hier und da gab es auch noch weitere Überraschungen. Auf diese werden wir in den kommenden Tagen gezielt eingehen. Einen großen Block in den Sessions nahm natürlich das Thema Azure IoT ein. Für Azure IoT Edge […]



Slides and Sample for my Angular Talk at WAD 2017 in Vienna

Sun, 14 May 2017 00:00:00 +0100

Please find below the slides and the sample from my Talk about Angular I did at We Are Developers in Mai 2017 in Vienna:




We are all creators – Tag 2 @ MSBuild 2017

Sat, 13 May 2017 05:00:18 Z

Die große Frage am Morgen des zweiten Tages auf der BUILD war: “Kann der erste Tag noch getoppt werden?“. Die Antwort war nach den ersten 30 Minuten der Keynote klar: „Ja!“. Aber beginnen wir von vorne… Die erste Ankündigung der Keynote war das Windows 10 Fall Creators Update, welches im dritten Quartal des Jahres kommen […]



With great opportunity comes great responsibility – Tag 1 @ MSBuild 2017

Thu, 11 May 2017 17:43:58 Z

Es gibt eine Menge Entwicklerkonferenzen, und es gibt die BUILD. Keine andere Konferenz im Microsoft Umfeld wird Jahr für Jahr so sehnlich erwartet wie diese. Die Teilnehmer werden dieses Jahr an einem völlig neuen Standort, dem Washington State Convention Center, Downtown Seattle begrüßt. Die Keynote zu Beginn wurde von CEO Satya Nadella eröffnet und steht […]



SQL Server und CLR Assemblies

Thu, 11 May 2017 14:08:34 Z

In manchen Fällen ist es ganz praktisch, Stored Procedures oder Functions für den SQL Server via CLR zur Verfügung zu stellen. Nachdem dies schon ein alter Hut ist, findet man auch zahlreiche Infos zu diesem Thema, aber nicht in einem Artikel. Verwaltung von Assemblies Für den Umgang mit Assemblies im SQL Server gibt es doch […]

The post SQL Server und CLR Assemblies appeared first on Norbert Eder.




Node kompiliert

Wed, 10 May 2017 10:23:00 +0200

Die JavaScript-Laufzeitumgebung Node verwendet intern zwar Googles V8 als Compiler, kann aber trotzdem keine Binärpakete erstellen. Das von dem Unternehmen Zeit entwickelte Modul pkg ändert das. Wie funktioniert das Modul, und was leistet es?



Hochperformante Anwendungen mit Angular: Unterlagen von JAX 2017 in Mainz

Wed, 10 May 2017 00:00:00 +0100

Nachfolgend meine Unterlagen von der JAX 2017 in Mainz:




Using Angular and AOT with Webpack

Wed, 10 May 2017 00:00:00 +0100

The Angular CLI provides AOT compilation out of the box. To make use of it, just create a production build:

ng build --prod

Under the hoods, the CLI uses the package @ngtools/webpack which provides a loader for compiling TypeScript as well as a Plugin for AOT. One can easily use these mechanisms directly with webpack. The easiest way to do this is to create a project with the CLI and then eject the CLI. Ejecting means that the CLI is blasted away and instead of this webpack is used directly:

ng eject

If there is an existing webpack configuration it can also be extended by the mentioned mechanisms quite easily. First of all, install the @ngtools/webpack package:

npm i @ngtools/webpack --save-dev

If the usage of @ngtools/webpack yields errors one should check the referenced Angular version. In general, this packages works best with the version the CLI is using currently. Other versions could cause issues.

After this, TypeScript files can be loaded with the @ngtools/webpack loader:

module: {
    rules: [
        [...]
        { test: /\.ts$/, loaders: ['@ngtools/webpack']}
    ],
}, 

For AOT, just add the AOT plugin:

var AotPlugin = require('@ngtools/webpack').AotPlugin;

[...]

plugins: [
    new AotPlugin({
        tsConfigPath: './tsconfig.json',
        entryModule: 'app/app.module#AppModule'
    }),
    new webpack.optimize.UglifyJsPlugin({
        compress: {
            warnings: false
        },
        output: {
            comments: false
        },
        sourceMap: false
    }),
    [...]
}

One very nice side effect of this is, that you don't have to write an own file to bootstrap Angular in AOT mode. Instead of this the Plugin is generating the code necessary for this.