Entity Framework – Tipps und Tricks

Zwei Frauen schauen gemeinsam auf einen Bildschirm

In diesem Blogbeitrag möchte ich einige Tipps und Tricks rund um Entity Framework mit euch teilen. In allen Beispielen gehen wir vom Code-First Ansatz aus.

 

1. 1-zu-1 Beziehung

Es gibt keine 1-zu-1 Beziehung in Datenbanken. Es gibt lediglich eine 1-zu-0/1 Beziehung. In Entity Framework wird diese Beziehung am besten mit der Fluent-API beschrieben.

public class Employee 
{
    public string Name { get; set; }
    public virtual Address Address { get; set; }    
}
 
public class Address
{
    public string Street { get; set; }
    public string PostCode { get; set; }
    public string City { get; set; }
    public virtual Employee Employee { get; set; }
}

Hier hat jede Datenbank ein Henne-Ei-Problem. Die Objekte können nicht simultan generiert werden und sofort auf das andere Objekt referenzieren.

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    modelBuilder.Entity<Address>()
                .HasOptional(e => e.Address) 
                .WithRequired(a => a.Employee); 
}

In diesem Beispiel kann ein Employee eine Address haben, aber ein Address kann nicht ohne Employee existieren.

Anmerkung: Mit Entity Framework kann eine (echte) 1-zu-1 Beziehung vorgetäuscht werden. Für die Datenbank sind diese Felder jedoch keine Pflichtfelder und somit keine echte 1-zu-1 Beziehung.

2. Mehr als eine 1-zu-n Beziehung zwischen zwei Entitäten

In unserem Beispiel gibt es folgende (vereinfachte) Klassen:

public class User
{
    public int Id { get; set; }
    public string UserName { get; set; }
}

public class Task
{
    public string Title { get; set; }
    public string Body { get; set; }
    public virtual User CreatedBy { get; set; }
}

Daraus resultiert folgende Datenbank:

Screenshot Datenbank mit einer 1-zu-n BeziehungDatenbank mit einer 1-zu-n Beziehung
Datenbank mit einer 1-zu-n Beziehung

Jetzt möchten wir die Klasse Task noch um einen User erweitern, der diese Aufgabe zugewiesen bekommt. Somit hätten wir zwei 1-zu-n Beziehungen zwischen Task und User. Mit Data Annotations lässt sich diese Beziehung einfach realisieren:

public class User
{
    public int Id { get; set; }
    public string UserName { get; set; }
    [InverseProperty(“AssignedTo”)]
    public virtual ICollection<Task> Tasks { get; set; }
}
public class Task
{
    public int Id { get; set; }
    public string Title { get; set; }
    public string Body { get; set; }
    public virtual User CreatedBy { get; set; }
    public virtual User AssignedTo { get; set; }
}

Daraus resultiert dann folgende Datenbank:

Screenshot Datenbank mit zwei 1-zu-n BeziehungDatenbank mit zwei 1-zu-n Beziehung
Datenbank mit zwei 1-zu-n Beziehung

3. Mit Entity Framework habe ich gar keine Kontrolle über meine Tabellen

Das ist ein hartnäckiges Vorurteil gegenüber Entity Framework, welches aber nicht ganz wahr ist. Wenn eine Zwischentabelle (für eine n-zu-m Beziehung) in Entity Framework erstellt wird, wird die Zwischentabelle mit dem Namen der verbundenen Entitäten erstellt.

public class Employee
{
    public string Firstname { get; set; }
    public string Lastname { get; set; }
    public virtual ICollection<Skill> Skills { get; set; }
}
 
public class Skill
{
    public string Name { get; set; }
    public int Level { get; set; }
    public virtual ICollection<Employee> Employees { get; set; }
}

Daraus kann nun eine EmployeeSkills oder eine SkillEmployees Tabelle entstehen. Die Erstellung dieser Zwischentabelle kann mit der Fluent-API gesteuert werden.

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    modelBuilder.Entity<Employee>()
          .HasMany<Skill>(e => e.Skills)
                .WithMany(s => s.Employees)
                .Map(es =>
                {
                    es.MapLeftKey(“EmployeeRefId”);
                    es.MapRightKey(“SkillRefId”);
                    es.ToTable(“EmployeeSkillList”);
                });
}

Die Methoden HasMany() und WithMany() werden zur Konfiguration von n-zu-m Beziehungen verwendet. Danach wird mit der Map() Methode die Tabelle mit dem gewünschten Namen definiert.

Wichtig: Die Entität, aus welcher die HasMany() Methode aufgerufen wird (in unserem Beispiel die Employee Entität), wird mit MapLeftKey() in die „linke Spalte“ geschrieben.

4. SQL + Entity Framework = <3

Eine Kombination aus SQL und Entity Framework ist immer möglich. Die Performance bei komplexen Abfragen mit vielen ungewollten JOINS kann Entity Framework schnell in die Knie zwingen. Eine Kombination aus Entity Framework und einer SQL View kann die Performance enorm anheben. Im nächsten Beispiel haben wir eine sehr simple View, die uns die Namen der Mitarbeiter, deren Skills und deren Skillstufe anzeigt:

CREATE VIEW SkillOverview AS
SELECT E.Firstname as Firstname, E.Lastname as Name, S.Level as Level, S.Name as Skill FROM Employees E
JOIN EmployeeSkillList ESL ON ESL.EmployeeRefId = E.Id
JOIN Skills S ON S.Id = ESL.SkillRefId

Als nächstes erstellen wir ein Datenmodell:

public class SkillOverviewModel
{
    public string Firstname { get; set; }
    public string Name { get; set; }
    public int Level { get; set; }
    public string Skill { get; set; }
}

Nun erstellen wir eine Methode, die uns das Datenmodell anhand der View befüllt:

public ICollection<SkillOverviewModel> GetSkillOverview()
{
    string query = “SELECT * FROM [dbo].[SkillOverview]”;           
    List<SkillOverviewModel> result = this.context.Database.SqlQuery<SkillOverviewModel>
   (query).ToList();
    return result;
}

Mit demselben Prinzip können auch SQL-Functions und Stored Procedures angesprochen werden. Die Parameter werden als SqlParameter Array übergeben. Wenn wir also nur die Mitarbeiter mit einem bestimmten Skill-Level sehen wollen entwickeln wir eine neue Methode:

public ICollection<SkillOverviewModel> GetSkillOverview(int skillLevel)
{
    string query = “SELECT * FROM [dbo].[SkillOverview] WHERE [Level] = @skillLevel”;
    List<object> parameters = new List<object>();
    SqlParameter skillLevelParameter = new SqlParameter(“@skillLevel”, skillLevel);
    parameters.Add(skillLevelParameter);
    List<SkillOverviewModel> result = this.context.Database.SqlQuery<SkillOverviewModel>
          (query, parameters.ToArray()).ToList();
   return result;
}

5. Darf es noch ein wenig mehr sein?

Durch den Code First-Ansatz spiegeln unsere Entitäts-Objekte eine ganze Zeile einer Tabelle ab. In einigen Anwendungen können Entitäten viele Eigenschaften haben, die gar nicht immer benötigt werden.

public class Employee
{
    public int Id { get; set; }
    public string Firstname { get; set; }
    public string Lastname { get; set; }
    public virtual ICollection<Skill> Skills { get; set; }
}

class Program
{
static void Main(string[] args)
{
AppContext context = new AppContext();
List<Employee> employees = context.Employee.ToList();
Console.ReadKey();
}
}​

Diese Abfrage liefert uns nun alle Einträge in der Employee Tabelle. Dadurch wird Id, Firstname und Lastname von jeder Entität geladen. Aber was ist mit den Skills eines Mitarbeiters? Lazy Loading ist standardmäßig aktiviert bei Entity Framework. Dadurch werden die Skills erst dann geladen, wenn diese gebraucht werden.

static void Main(string[] args)
{
    AppContext context = new AppContext();
    List<Employee> employees = context.Employee.ToList();
    foreach(Employee employee in employees)
    {
        Console.WriteLine($”{employee.Firstname} {employee.Lastname}”);
        foreach(Skill employeeSkill in employee.Skills)
        {
            Console.WriteLine($”{employeeSkill.Name}: {employeeSkill.Level}”);
        }
    }
    Console.ReadKey();
}

Alle Employees sind bereits geladen, aber deren Skills leider nicht. Dadurch wird in der inneren foreach-Anweisung jedes Mal ein Request zur Datenbank geschickt und lädt den Skill nach. Besser wäre es, wenn die Skills direkt mit den Employees geladen werden. Mit der Include() Methode lässt sich das einfach realisieren:

List<Employee> employees = context.Employee.Include(e => e.Skills).ToList();

6. Das habe ich doch gar nicht gebraucht!

Wie wir sehen, verwenden wir nur FirstName und LastName von Employee sowie Name und Level von Skill. Mitgeladen wird aber auch jeweils die Id. Unser Beispiel ist etwas “klein”, aber stellen Sie sich vor, Sie haben zwei Entitäten mit verschiedenen Datentypen wie Datum, Integer, Float und davon auch noch viele. Diese werden nicht benötigt, aber auch geladen. In SQL würden wir auch nicht

SELECT * FROM [TABLE] 

ausführen, um dann nur die Daten aus der Menge zu nehmen, die wir brauchen. Wieso sollten wir das dann bei Entity Framework tun?

Unser Ergebnis von der Query kommt wieder in ein Model:

public class FullNameModel
{
    public string FullName { get; }
    public FullNameModel(Employee employee)
    {
        this.FullName = $”{employee.Firstname} {employee.Lastname}”;
    }
}
public ICollection<FullNameModel> GetAllFullNames()
{
    List<FullNameModel> result = this.context.Employee
                                        .Select(x => new FullNameModel
                                        {
                                            FullName = $”{x.Firstname} {x.Lastname}”
                                        }).ToList();
    return result;                                                                                                                                                                                                     }

Übersetzt lautet dieser Code: SELECT Firstname, Lastname FROM [Employees] also genau das, was wir brauchen. Ein Entity Framework Select-Statement mit einem angepasstem Data Transfer Object(DTO) kann genauso schnell sein wie ein direktes SQL Statement.

Wichtig: Im Select-Statement kann nur ein parameterloser Konstruktor verwendet werden.

Fazit

Entity Framework oder SQL? Wieso nicht beides? Entity Framework kann die Arbeit erleichtern, aber nicht alles ist standardmäßig genau so eingestellt, wie der Entwickler es gerade braucht. Durch eine gute Kombination aus Entity Framework und SQL können Schwächen kompensiert und Entwicklungszeit verkürzt werden. Dank Codefirst wird die Datenbankgenerierung in der Codeverwaltung gespeichert und ein Wechsel der Datenbankengine ist einfacher zu realisieren. Der Einsatz von Entity Framework ersetzt nicht das Grundwissen von relationaler Datenmodellierung, sondern sollte diese ergänzen.

Michael SonntagBlog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

GraphQL – Die Alternative zu REST

GraphQL ist eine Abfragesprache für APIs zur Ausführung von Abfragen mit Hilfe eines für die Daten definierten Typensystems. In dieser kleinen Blog-Serie schauen wir uns einfache Queries und Mutations an.

Blog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

Handlebars.js – Semantische Template Library

Handlebars.js ist eine Template-Engine für JavaScript. Sie ermöglicht dem Entwickler, mit Hilfe von semantischen Templates Business-Logik und HTML zu trennen.

Kathrin HeinrothBlog
novaCapta: Ihr Partner für die digitale Transformation mit Microsoft Technologien
Blog

Spaltenformatierung in SharePoint: Column formatting vs. JS

Eine Gegenüberstellung der Spaltenformatierung von JSLink zu der neueren Methode Column formating in Office 365.

Blog
Close up of female hands while typing on laptop
Blog

SharePoint Framework Client-Side Webparts mit React

React ist ein Framework zum Erstellen von Benutzeroberflächen. In der SharePoint Online Entwicklung bietet es sich für die Entwicklung von Client-Side Webparts an.

Kathrin HeinrothBlog
novaCapta: Ihr Partner für die digitale Transformation mit Microsoft Technologien
Blog

Testen von Angular Anwendungen mit Cypress

Cypress ist ein End-to-End Testing Framework, mit dem man einfache Tests erstellen kann, die in Echtzeit ausgeführt werden. Mit Cypress kann man auch Snapshots von den einzelnen Schritten während der Testausführung sehen. Tests können schnell erstellt werden, ohne dass bestimmte Server oder Driver benötigt werden.

Andy KurzBlog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

Struktureller Aufbau eines Angular Modules

Dieser Blogbeitrag beschäftigt sich mit dem strukturellen Aufbau eines Angular Modules und der Kommunikation der einzelnen Komponenten.

Blog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

Ich bin im Flow! – Eine Übersicht zu Microsoft Flow

Die Power Platform wird aktuell von Microsoft sehr stark gepusht. Zeit, sich mit dem Potenzial der einzelnen Komponenten zu beschäftigen. Heute: Flow.

Blog
Zwei Frauen schauen gemeinsam auf einen Bildschirm
Blog

Xamarin – plattformübergreifende App-Entwicklung

Xamarin ist eine übergreifende Entwicklungsplattform, die die Welten zusammenführt und die bislang erforderliche Mehrarbeit weitgehend überflüssig macht.

Blog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

Teams Extensions – Erstellen von Erweiterungen für Teams

Mit der Entwicklung von Extensions kann Teams einfach erweitert werden. Hierfür gibt es das App Studio, welches über den Teams Store installiert werden kann.

Julius ElsnerBlog
novaCapta: Ihr Partner für die digitale Transformation mit Microsoft Technologien
Blog

Nutzung der SharePoint REST API mit Microsoft Flow

Durch Zugriffe über die REST API lassen sich viele Vorgänge mit Microsoft Flow automatisieren.

News
Blue sky and clouds
News

Wir laden ein zum Azure Innovation Day

Bei uns gibt es am 29. Oktober 2019 ein spannendes Wissens-Update zu Azure und Cloud im Mediapark Köln. Auf dem halbtägigen Event stellen wir Ihnen praxisnahe Use Cases aus unseren Kundenprojekten vor. Lassen Sie sich inspirieren!

Blog
News der novaCapta
Blog

Der wiederholte Bereich in Nintex Forms

Nintex für Fortgeschrittene

Thomas KoglerBlog
News der novaCapta
Blog

Gefilterte Ansicht über Unterschiede in mehreren Spalten

Die Filtermöglichkeiten in Ansichten in SharePoint sind begrenzt. So ist z.B. der direkte Vergleich zwischen zwei Spalten nicht möglich. Möchte ich Unterschiede beim Vergleich zweier Spalten angezeigt bekommen so ist dies nur über einen einzelnen Wertevergleich möglich (Quelle1=“A“ und Kopie1<>“A“). Möchte man dann noch mehrere Spalten miteinander vergleichen wird es schwierig bis unmöglich.

Blog
novaCapta: Ihr Partner für die digitale Transformation mit Microsoft Technologien
Blog

CQRS in ASP.Net MVC mit Entity Framework

Die Entwicklung von Anwendungen in einem mehrschichtigen Aufbau hat sich etabliert. Design Patterns wie MVC schaffen Lösungen.

Lars EschweilerLars EschweilerBlog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

PDF-Konverter in Power Automate

Kann ich mittels Microsoft Power Automate und einer SPFx-Anwendung ohne größere Probleme einen PDF-Konverter erstellen? Die einfache Antwort: Ja. Und auch die Ausführliche gibt’s hier.

Blog
Blue sky and clouds
Blog

Vorgesetzte in Nintex per LDAP-Abfrage ermitteln

Meine Sekretärin erledigt das für mich

Blog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

Dateizugriffsrechte verwalten mit Microsoft RMS – Teil 2

Dieser Teil der Artikelserie befasst sich mit der Anwendung von den Microsoft RMS in der Praxis.

Andy KurzBlog
novaCapta: Ihr Partner für die digitale Transformation mit Microsoft Technologien
Blog

Warum ist Inline-CSS und JavaScript-Code so schlecht?

Warum der Einsatz von Inline-CSS bzw. JavaScript-Code schlecht ist, da Dinge wie Caching, DRY-Prinzip, Wartbarkeit und Media-Queries gänzlich außer Acht gelassen werden.

Blog
Zwei Frauen schauen gemeinsam auf einen Bildschirm
Blog

Fünf Tipps für eine verbesserte Software-Adoption

Die Generation Y stellt im Arbeitsumfeld neue Anforderungen an Unternehmens-Software und -Systeme. Unsere fünf Tipps, um die Adoption einer Software erhöhen.

Blog
novaCapta: Ihr Partner für die digitale Transformation mit Microsoft Technologien
Blog

Drei Tipps für mehr SharePoint-Begeisterung

Wir geben Tipps zur der Microsoft Serverplattform für Content Management, (Social)-Collaboration, Portalfunktion, Business Intelligence und Enterprise Search.

Blog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

Multi Factor Authentication (Azure und SharePoint)

Microsoft führt mit der Multi Faktor Authentisierung (MFA) eine weitere und kostenlose Authentifizierungsebene zu in Office 365 hinzu.

Blog
novaCapta: Ihr Partner für die digitale Transformation mit Microsoft Technologien
Blog

Fünf Tipps für mehr SharePoint-Adoption in Unternehmen

SharePoint ist eine vielseitige und mächtige technologische Plattform mit vielen Funktionen. Unseren fünf Expertentipps erhöhen die Adoption.

Leistung
Zwei Männer am Smartphone
Leistung

Business Productivity Framework

Unser Mittelweg bei der Einführung neuer Software: Business Productivity Framework. Dies ist nichts anderes als die Wiederverwendung von bewährten Architekturen. Individuelle Kundenwünsche lassen sich damit in kürzerer Zeit und ohne hohen Kostenaufwand realisieren.

Andy KurzBlog
novaCapta: Ihr Partner für die digitale Transformation mit Microsoft Technologien
Blog

Braucht man wirklich jQuery?

Ich beleuchte diese Frage anhand von Beispielen aus der Praxis und hinterfrage, ob in der modernen Browserlandschaft auch natives JavaScript ausreicht.

Blog
Schreibtisch
Blog

Anhänge nach Datentyp in PowerApps einschränken

Eine immer wieder auftauchende Anfrage bei digitalen Prozessen ist die Beschränkbarkeit von Anhangsdokumenten. Glücklicherweise lässt sich diese Funktionalität relativ unkompliziert mit wenigen kleinen Formeln in PowerApps nachbauen.

Blog
novaCapta: Ihr Partner für die digitale Transformation mit Microsoft Technologien
Blog

Migration IBM Lotus Notes zu Microsoft SharePoint

Eine Migration von Lotus Notes/Domino nach SharePoint/Exchange besteht grundsätzlich aus mindestens zwei Bereichen.

Andy KurzBlog
Blue sky and clouds
Blog

Angular Route-Guards

Was versteht man eigentlich unter Angular Route-Guards?

Blog
Blue sky and clouds
Blog

Grundlagen der Datenmodellierung

Fachliches Modell mit ER-Diagrammen (auch ERM – Entity Relationship Model)

Blog
Close up shot of female hands typing on laptop
Blog

SharePoint vs. TYPO3 – Sechs Gründe für SharePoint-Intranet

Hier lesen Sie die sechs wichtigsten Argumente, warum Sie Office 365 mit SharePoint für Ihre Intranetlösung gegenüber TYPO3 bevorzugen sollten.

Blog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

Dateizugriffsrechte verwalten mit Microsoft RMS – Teil 3

Dieser Teil der Artikelserie befasst sich mit der RMS-Freigabeanwendung, welche Dateien jeglichen Dateityps verschlüsseln kann.

Blog
Drei Personen in einer Besprechung an einem Tisch besprechen den Zeitplan auf ihrem Microsoft-Laptop
Blog

Die Bedeutung einer Governance

In der Governance-Struktur legen Sie fest, wie Sie mit Ihrer SharePoint-Umgebung arbeiten. Governance beschreibt die Rollen der Nutzer und legt Verantwortlichkeiten fest.

Blog
Blue sky and clouds
Blog

Farben zur Optimierung des SharePoint-Kalender

Auch in SharePoint kann man Kategorien für Teamkalender-Einträge farblich abheben und damit die Lesbarkeit erhöhen. Wir zeigen Ihnen, wie das geht.

Blog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

Produktiver lernen mit SharePoint

Bringt die aktuelle Version der SharePoint-Plattform so viele neue Features mit, es zu einem perfekten Learning Management System zu machen? Wir beleuchten es.

Blog
Close up of female hands while typing on laptop
Blog

Grundlagen der Gestaltung

Die Gestaltgesetze der Wahrnehmungspsychologie

TIMETOACT
Andreas LöwAndreas LöwBlog
Blog

Deno – Das müsst ihr über die Laufzeitumgebung wissen

Deno nennt sich die neueste Kreation von Ryan Dahl, dem ursprünglichen Schöpfer von Node.js. Die neue Laufzeitumgebung weist einige spannende Neuerungen auf – mehr dazu in unserem Blogbartikel!

Blog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

Was kann der neue Office 365 Planner – und was kann er nicht

„Office 365 Planner“ ist das neue Tool von Microsoft, mit dem sich Zusammenarbeit und Aufgabenverteilung in Teams organisieren lässt. Was kann der neue Office 365 Planner – und was kann er nicht

Blog
Zwei Frauen schauen gemeinsam auf einen Bildschirm
Blog

Umfragen in Teams mit Microsoft Forms

Umfragen bieten die Möglichkeit, bei der Planung von beispielsweise Events schnell zu einem Termin/Ergebnis zu kommen oder aber auch Feedback zu vergangenen Ereignissen einzuholen. Mit Microsoft Forms lassen sich Umfragen schnell und einfach in Teams erstellen bzw. integrieren.

Blog
News der novaCapta
Blog

Zentralisiertes Logging – Simpler Logging-Stack mit Graylog

Logging ist ein komplexes und doch essenzielles Thema. Gute Logs vereinfachen einem Supporter die Arbeit und ermöglichen es, Probleme schneller einzugrenzen.

Michael  MatuschekMichael MatuschekBlog
Close up of female hands while typing on laptop
Blog

Qualitätsmanagement - Dokumentation verwalten mit SharePoint

Qualitätsmanagement-Dokumente zu verwalten wird schnell unübersichtlich und kompliziert. Wir haben eine Lösung entwickelt, die das Dokumentenmanagement deutlich vereinfacht.

Blog
Blue sky and clouds
Blog

Hat Ihr Unternehmen einen Informations-Lebenszyklus?

Jede Information hat eine Aktualitätsphase, eine Nachschlag-Phase, eine Archiv-Phase und einen Obsoleszenz-Punkt. Steuern Sie den Lebenszyklus Ihrer Informationen?

Blog
Team of programmers working in office
Blog

Was Sie beim nächsten IT-Projekt beachten sollten

Unternehmen sind in ihrer digitalen Transformation erfolgreicher, wenn sie bei der Umsetzung auf ein wirksames Change Management setzen. Wie der Wandel gelingt, verrät Nora Sommer, Senior Business Consultant bei der novaCapta, im Interview.

Webcast
Webcast

First Tuesday am 02.07.2024

Hol dir die latest News zu Google Workspace und erfahre, wie Du Dir mit Gemini den Arbeitsalltag erleichtern kannst!

Webcast
christmas woman
Webcast

First Tuesday am 12.12.2023

Der Blick aufs Jahr 2023 mit der GCP- und Google Workspace Brille.

Blog
Close up of female hands while typing on laptop
Blog

Was ist Application Lifecycle Management (ALM)?

Application Lifecycle Management beschreibt einen ganzheitlichen Ansatz, der eine Anwendung während allen Phasen der Software begleitet.

Blog
Zwei Frauen schauen gemeinsam auf einen Bildschirm
Blog

Change Management in IT-Projekten

Viele IT-Projekte scheitern am Zusammenspiel verschiedener Faktoren, wie unklare Ziele, ungenügende Ressourcen, schlechte Kommunikation und fehlende User-Akzeptanz.

Blog
Zwei Frauen schauen gemeinsam auf einen Bildschirm
Blog

Corporate News – Das zentrale Medium interner Kommunikation

Um die Akzeptanz des unternehmenseigenen Intranets zu steigern, sind Corporate News ein erster Schritt, um Neuigkeiten, Strategie und Strukturen gleichmäßig zu kommunizieren.

Blog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

Dateizugriffsrechte verwalten mit Microsoft RMS – Teil 4

Dieser letzte Teil der Artikelserie befasst sich mit dem Schutz von Dokumenten innerhalb von SharePoint.

Andy KurzBlog
novaCapta: Ihr Partner für die digitale Transformation mit Microsoft Technologien
Blog

Angular 5 Custom Filter in Angular Material Data-Table

In diesem Blogbeitrag will ich euch darlegen, wie man einen Custom Filter für das Angular Material Data-Table Modul erstellt.

Blog
novaCapta: Ihr Partner für die digitale Transformation mit Microsoft Technologien
Blog

SharePoint und Informationsarchitektur – worauf kommt es an?

Wie definiert sich eine Informationsarchitektur und die Rolle eines Informationsarchitekten im SharePoint-Umfeld?

Blog
Hands of man using online virtual app on mobile phone. Millennial guy chatting on smartphone, using banking services, reading text message, typing, shopping, making call, browsing internet. Close up
Blog

Dateizugriffsrechte verwalten mit Microsoft RMS – Teil 1

Diese Artikelserie befasst sich mit der Einrichtung und Verwendung der Rights Management Services (RMS) von Microsoft, die eine sichere Verschlüsselung von Dateien bieten.

Blog
Phishing, mobile phone hacker or cyber scam concept. Password and login pass code in smartphone. Online security threat and fraud. Female scammer with cellphone and laptop. Bank account security.
Blog

Die Awareness kommt mit dem ersten Cyberangriff

Aktuell gehören Cyberangriffe zu den grössten Betriebsrisiken eines Unternehmens. Wie IT-Abteilungen sensible Unternehmensdaten effektiv schützen können und warum Cloud Computing die sicherere Wahl sein kann, weiss Sandra Zimmerli, Cloud Engineer bei der novaCapta Schweiz AG.

Blog
Eine Angestellte lädt auf ihrem Handy die Microsoft Teams App für digitale Zusammenarbeit herunter.
Blog

Microsoft Teams: mehr als Videotelefonie und Chat

Corona treibt viele Arbeitnehmer ins Homeoffice – und zu Microsoft Teams. Eine Umfrage der novaCapta zeigt, dass Teams mehr Potenzial bietet als viele wissen. Wie Teams den Alltag wirklich erleichtert, verrät Andy Frei, Mitglied der Geschäftsleitung novaCapta CH, im Interview.

Blog
Programmer Woman Coding On Computer
Blog

Ohne Programmierkenntnisse zum Entwickler werden

Bei der Digitalisierung von Unternehmen erfordern passgenaue Business-Apps und automatisierte Workflows bislang ­erheblichen Entwicklungsaufwand. Microsoft setzt dem die Power Platform entgegen, mit der sich auch ohne Programmierkenntnisse gleichwertige Geschäftsanwendungen erstellen lassen sollen.

Event
Interessiertes Publikum sinnbildlich für IBM Think 2019
Event

X-INTEGRATE auf der IBM THINK 2019

Freuen Sie sich außerdem auf zwei spannende Sessions mit IT-Manager und Geschäftsführer der X-INTEGRATE Software & Consulting GmbH Wolfgang Schmidt zu innovativen Business-Integrationstechnologien.

Webcast
Junge Dame mit Brillen umgeben von Wolken
Webcast

First Tuesday am 04.06.2024

Jetzt Webinar nachschauen!

Webcast
clever korean school girl
Webcast

First Tuesday am 18.01.2024

Jetzt Webinar nachschauen!

Webcast
Webcast

First Tuesday am 05.03.2024

Jetzt Webinar nachschauen!

Webcast
Webcast

First Tuesday am 16.04.2024

Jetzt Webinar nachschauen!

Leistung
Eine Expertin erläutert Kollegen .NET Code in einer Software-Entwicklungsumgebung.
Leistung

Applications & Integration

Von kleineren Apps bis zu komplexen Unternehmenslösungen, On-Prem, Hybrid oder in der Azure-Cloud, wir finden mit Ihnen gemeinsam den besten Weg zum Ziel.

Technologie
Eine Angestellte lädt auf ihrem Handy die Microsoft Teams App für digitale Zusammenarbeit herunter.
Technologie

Microsoft Teams für digitale Zusammenarbeit

Microsoft Teams ist die am schnellsten wachsende Anwendung in der Geschichte von Microsoft und hat begonnen, die Art und Weise wie wir arbeiten zu verändern. Finden Sie heraus, wie Sie Teams in Ihrem Unternehmen für bessere Produktivität, Kollaboration und als Digital Workplace nutzen können.

Service
Young beautiful woman working on laptop at home office, copy space, portrait.
Service

DevOps für Prozessoptimierung im Unternehmen | novaCapta

Mit einer ganzheitlichen DevOps Strategie können Unternehmen schnell auf Veränderungen reagieren - und haben damit einen großen Wettbewerbsvorteil. Unsere Expert:innen stehen Ihnen mit Rat und Tat zur Seite und unterstützen Sie bei der DevOps-Einführung.

Leistung
Happy lifestyle digital nomad young cheerful woman work outdoor with laptop computer - people and modern technology job and communication related - alternative office at the beach
Leistung

Microsoft Teams as a Platform

Mit Teams-Apps bringen Sie Anwendungen und Prozesse dort zusammen, wo Kollaboration und Lernen stattfinden und passen das Tool so ganz individuell an die Bedürfnisse Ihres Unternehmens an.

Leistung
medicine, healthcare and people concept - female doctor with tablet pc computer talking to smiling woman patient at hospital
Leistung

Apps als Medizinprodukt

Eine App so zu entwickeln, dass sie offiziell als Medizinprodukt validiert werden kann, ist aufwendig. Wir stellen Ihnen ein Entwicklerteam an die Seite, dass Erfahrung in der Entwicklung und Validierung von medizinischen Software-Produkten hat.

News
Young beautiful woman working on laptop at home office, copy space, portrait.
News

novaCapta hat neue Gold-Kompetenz für DevOps

Die novaCapta hat ihren Partnerstatus bei Microsoft zusätzlich vergoldet: Ab sofort glänzt auch die Sparte DevOps in Gold.

Referenz
Beladenes Containerschiff auf dem Meer
Referenz

dteq: Projektmanagement wie es sein soll

Immer häufiger erfüllt Standardsoftware nicht alle Anforderungen und Individualentwicklungen lassen die Kosten explodieren. Die weltweit tätige dteq group hat mit dem Business Productivity Framework der novaCapta die optimale Lösung für ihr Projektmanagement gefunden.

Blog
Für versicherungsmathematische Berechnungen, Projektionen, die Gewinnprüfung, stochastische Modellierung und das Asset-Liability-Management ist ein modernes Framework unverzichtbar. Was muss es im Spannungsfeld gesetzlicher und unternehmerischer Hürden leisten? Und was muss aktuarielle Software mitbringen, wenn sie den Herausforderungen von heute und morgen gerecht werden will?
Blog

Eine Frage des Frameworks

Die Digitalisierung macht auch vor der Veränderung aktuarieller Tätigkeiten nicht Halt. Hinzu kommen längst beschlossene gesetzliche Vorgaben, die u.a. IT-Abteilungen vor größte Herausforderungen stellen.

Blog
Happy male business team leader talking to employees at corporate meeting, discussing work project, sharing jokes, laughing. Positive mentor training diverse group of interns, having fun
Blog

Tipps & Tools für eine erfolgreiche interne Kommunikation

Firmenevents sind für viele Unternehmen ein Highlight, bergen jedoch Herausforderungen für die interne Kommunikation. In unserem Blogbeitrag zeigen wir, wie und mit welchen Tools novaCapta diese Aufgabe gemeistert hat.

Blog
Phone lock code. Smartphone protection with 2fa (two factor authentication). Smartphone protection and security with pin number. Encrypted data. Personal online privacy. Cyber hacker threat.
Blog

Interview: Wie Unternehmen Cyber Security herstellen

Unser Kollege Sebastian Nipp leitet nun die Unit Cloud Security & Infrastructure. Im Interview erzählt er, was ihn zum Wechsel bewogen hat, welche Ziele er verfolgt und welche Herausforderungen warten. Besonders im Fokus: Cyber Security.

Blog
Videoserie zur Azure, Teil 3, Cloud Mythos
Blog

Azure Video-Serie: Mythos "Cloud günstiger als On-premises"

Im dritten Teil sind wir dem Mythos "Die Cloud ist immer günstiger als On-Premises" auf der Spur. Warum das so nicht zu 100 Prozent stimmt und was Sie tun können, um die Kosten in der Cloud gering zu halten, erklärt unser Azure Experte.

Blog
Videoserie zur Azure, Teil 4, Mythos Cloud Provider
Blog

Azure Video-Serie: Mythos "Cloud Provider = Management"

Der Mythos "Der Public Cloud Provider nimmt alle Arbeit ab" hält sich hartnäckig. Unser Azure Experte erklärt, warum das so nicht stimmt, welche Themen beim Wechsel in die Public Cloud relevant sind und was es mit PaaS auf sich hat.

Pascal  Brunner Pascal Brunner Blog
Blog

Wieso braucht es Change Management?

Immer häufiger liest man von der Wichtigkeit von Change & Adoption. Doch wieso braucht es das und wie gehe ich das an?

Blog
Videoserie zur Azure, Teil 1, Azure Cost Management
Blog

Azure Video-Serie: Cost Compliance

Azure Cost Management ist ein kostenloser Microsoft Dienst, der dabei hilft, Ihre Cloudkosten zu verstehen, unnötige Ausgaben zu identifizieren und Optimierungspotenziale zu entdecken. Wir zeigen Ihnen, wie Sie ihn nutzen.

Blog
Luzia Herger
Blog

Working @ novaCapta: Luzias Insights

In der Reihe „Working @ novaCapta“ wollen wir hinter die Kulissen blicken und stellen regelmäßig Kolleg:innen vor. In diesem Beitrag begleiten wir Luzia Herger, die als wahres Allround Talent bei der novaCapta Schweiz in den Bereichen Marketing, Backoffice und HR tätig ist.

News
Female student using laptop on desk at library
News

Fachbeitrag der novaCapta: Das personalisierte Intranet

Effektivität erhöhen, Motivation steigern, die Zusammenarbeit fördern: das alles kann ein personalisiertes Intranet leisten. Was dieses ausmacht, erklären Ihnen unsere Experten in unserem Fachbeitrag "Das personalisierte Intranet" im Online Magazin „pressesprecher“.

Blog
Videoserie zur Azure, Teil 2, Azure Advisor
Blog

Azure Video-Serie: Advisor

Azure Advisor ist ein kostenloses Werkzeug von Microsoft und enthält die Best Practices, mit denen Sie sicherstellen, kosteneffizient in der Cloud zu arbeiten. Wir zeigen Ihnen, wie Sie den Azure Advisor verwenden.

Blog
Cristina Steegmann
Blog

Working @ novaCapta: Cristinas Insights

In der Reihe „Working @ novaCapta“ wollen wir hinter die Kulissen blicken und stellen regelmäßig Kolleg:innen vor. In diesem Beitrag gibt uns Cristina Steegmann von der novaCapta Schweiz einen Einblick in ihrem Arbeitsalltag.

Blog
Young business people in office
Blog

Ohne Digital Workplace keine digitale Transformation

Der Digital Workplace steht für neue Technologien, moderne Arbeitsweisen und soll bei alltäglichen Aufgaben entlasten. Was aber zeichnet einen Digital Workplace aus und was ist notwendig, um die digitale Transformation zu meistern?

Blog
Ausschnitt vom Firmenevent 2023 der novaCapta
Blog

Warum Firmenevents Teil unserer Unternehmenskultur sind

Unsere Firmenevents sind fester Bestandteil unserer Unternehmenskultur. Warum dem so ist erfahrt ihr im Video! 🎉

Blog
Portrait von Samuel Horstmann
Blog

Working @ novaCapta: Samuels Insights

In der Reihe „Working @ novaCapta“ wollen wir hinter die Kulissen blicken und stellen regelmäßig Kolleg:innen vor. Diesmal stellen wir Samuel Horstmann vor, der seit 2020 die Erfolgsgeschichte der novaCapta mitgestaltet. In diesem Beitrag der Reihe berichtet er uns über seine Erfahrungen mit der novaCapta als Arbeitgeber und wie er bei der novaCapta die ideale Work-Life-Balance für sich gefunden hat – sogar mit Studium neben dem Beruf.

Blog
Happy caucasian casual businesswoman using laptop at desk
Blog

"Ein Intranet ist keine Nebentätigkeit"

Im Interview erklären unsere Modern Work Expert:innen Claudia Mislin und Patrick von der Heydt, wie Sie erfolgreich ein Intranet mit SharePoint Online aufbauen – und wie der Umstieg von Valo gelingt.

Blog
ESG environmental social governance policy for modish business to set a standard to achieve high ESG score
Blog

IT: Schlüssel zum erfolgreichen Nachhaltigkeitsmanagement?!

Nachhaltigkeit wird immer wichtiger. Im Interview erklären Marcus Schneider (novaCapta), Urban Buschmann (Climate3) und Anke Peter (planZ), wie Unternehmen ihre Nachhaltigkeitsstrategie erfolgreich angehen.

Blog
Mitarbeiterinnen der novaCapta im Büro in Hannover
Blog

Das Einmaleins zum Aufbau eines Intranets

Ein Intranet muss sorgfältig geplant, regelmäßig betreut und gezielt weiterentwickelt werden. Unser Einmaleins enthält die wichtigsten Organisationstipps für den Aufbau eines neuen Intranets.

Blog
Creative young woman working on laptop in her studio
Blog

Modern Workplace: Erste Schritte zum modernen Arbeitsplatz

Menschen mit Technologie für eine moderne Arbeitweise zusammenbringen? Erfahren Sie, welche ersten Schritte zum Modern Workplace zu gehen sind!

Blog
Smile, work and a businessman with a laptop for an email, communication or online coding. Happy, programming and a male programmer typing on a computer for web or software development in an office
Blog

Mit Microsoft Copilot in die Zukunft des Arbeitens

Microsoft Copilot in aller Munde. Auch wir werden in letzter Zeit häufig nach Copilot und Künstlicher Intelligenz im Allgemeinen gefragt. Deshalb beantworten wir in diesem Blogbeitrag die häufigsten Fragen und Bedenken kompakt und einfach!

Blog
Foto vom Führungskräfteleitlinien-Workshop der novaCapta im Kölner Büro
Blog

Warum & wie wir Führungsleitlinien entwickelt haben

Um unsere Unternehmenskultur zu stärken und weiterzuentwickeln, haben wir Führungsleitlinien erarbeitet, die die Verantwortung unserer Führungskräfte beschreiben und ihnen eine Verhaltensorientierung geben sollen. Wie der Prozess zur Konzeption und Implementierung der Führungsleitlinien aussah, teilen wir in diesem Beitrag.

Blog
Erstellung einer Mitarbeiter-App
Blog

Wer benötigt ein Intranet?

Welche Unternehmen brauchen ein Intranet und warum benötigen sie es? Um diese Frage sinnvoll zu beantworten, lohnt es sich, die Bedeutung und Funktionen eines Intranets zu verstehen.

Blog
Portrait von Sandra Zimmerli
Blog

Working @ novaCapta: Sandras Insights

In der Reihe „Working @ novaCapta“ wollen wir hinter die Kulissen blicken und stellen regelmäßig Kolleg:innen vor. In diesem Beitrag nimmt uns Sandra Zimmerli von der novaCapta Schweiz im Video mit in ihren (Arbeits-)Alltag.

Blog
Problem Solving,Close up view on hand of business woman stopping falling blocks on table for concept about taking responsibility.
Blog

10 Must-haves im Change Management

Welche Maßnahmen rund um Change & Adoption zeigen sich am wirksamsten? Wir teilen 10 Aspekte, die ausschlaggebend für den Erfolg und die Nutzerakzeptanz neuer Technologien sind.

Blog
Frau arbeitet remote mit Smartphone und Laptop
Blog

Was Sie von Copilot erwarten können – und was nicht

Der Hype um Copilot for Microsoft 365 ist groß. Wie so oft in solchen Fällen, folgt bei vielen Usern schnell Ernüchterung. Daher ist ein realistisches Erwartungsmanagement wichtig. Wir zeigen Ihnen anhand von vier Mythen, was Copilot kann – und was nicht.

Blog
Close up of a business man working on a laptop, typing with his hands for work in office environment home office
Blog

Vorschau: IT-Trends 2024 - Teil 2

Von KI über IoT bis hin zu Intelligent Workplace: Welche Technologien und Herausforderungen warten 2024 auf Unternehmen? Wir haben gefragt, unsere Expert:innen haben geantwortet. Lesen Sie Teil 2 unserer IT-Trendvorschau!

Blog
Business professionals using a tablet pc in an office
Blog

Automatisierter Testing Prozess mit Power Apps

Die Automatisierung von Geschäftsprozessen ist für viele unserer Kunden ein wichtiges Projekt. In diesem Blogbeitrag zeigen wir an einem konkreten Kundenbeispiel, wie Power Apps für mehr Effizienz sorgt.

Blog
Portraitbild von Gerardo Immordino
Blog

Working @ novaCapta: Gerardos Insights

Unser Kollege Gerardo Immordino ist seit Kurzem neuer Geschäftsführer der novaCapta Schweiz AG. Im Rahmen unserer Serie "Working @ novaCapta", in der wir einen Blick auf die Personen hinter novaCapta werfen, stellen wir euch Gerardo einmal genauer vor.

Kompetenz
Headerbild für Edge Computing
Kompetenz

Edge Computing

Mit Edge Computing können Sie Daten dezentral, direkt am Ort ihrer Entstehung, analysieren und auswerten – und zwar nahezu in Echtzeit.

Blog
Detailaufnahme eines Fingers, dessen Fingerabdruck zur Identifizierung am Laptop genutzt wird. Daben sieht man ein Sicherheitsschloss.
Blog

NIS2 kommt: So bereiten Sie sich optimal vor

NIS2 kommt. Was genau beinhaltet diese neue EU-Richtlinie und wie bereiten Unternehmen sich optimal vor? In unserem Blogbeitrag inkl. Video geben unsere Experten konkrete Tipps - und zeigen, welche Vorteile es hat, die Maßnahmen umzusetzen!

Blog
Phone password lock for mobile cyber security or login verification passcode in online bank app. Data privacy and protection from hacker, identity thief or cybersecurity threat. Laptop and smartphone.
Blog

Security Awareness für mehr mehr Schutz vor Cyberangriffen

Cyberangriffe nehmen zu und werden komplexer. Das größte Risiko sitzt dabei mit dem User immer noch vor dem Bildschirm. Wir zeigen Ihnen, wie und warum Sie unbedingt auf Security Awareness setzen sollten!

Blog
Mitarbeiterinnen der novaCapta im Büro in Hannover
Blog

Erfolgsfaktoren Weiterbildung & Entwicklung

Bei der novaCapta wissen wir, dass unsere Mitarbeitenden der Grundstein für unsere Erfolge sind. Dies hat uns dazu veranlasst, mehrere Initiativen zu starten, unsere Mitarbeitenden gezielt zu fördern und individuelle Lernpfade zu ermöglichen. Ein wichtiger Baustein ist die „nC Academy"

Blog
African American Business woman hard working, debtor, deferred debt, Times Interest Earned, Subsidiary Ledger, Special Journal, Shareholders Equity, Scrap value, Price Index, Profitability Ratios
Blog

Dokumentenmanagement mit GPT optimieren

KI und GPT sind in aller Munde. Doch welche konkreten Use Cases sind möglich? Wie sieht die Einführung aus? Wir zeigen Ihnen, wie einer unserer Kunden Dokumentenmanagement durch den Einsatz von GPT revolutioniert hat.

Blog
Cute university student with curly red hair doing homework sitting at kitchen table with coffee cup and wired earphones next to big window, watching online tutorial on laptop and writing in copybook
Blog

Wie Viva Learning Lernen im Arbeitsalltag möglich macht

Lebenslanges Lernen ist nicht nur wichtig, um auf dem neuesten Stand zu sein, sondern auch für die persönliche Motivation. Wir erklären, wie Sie mit Viva Learning Weiterbildungsmöglichkeiten in den Arbeitsalltag integrieren.

Blog
Social media marketing concept. Women hand using smartphone typing, chatting conversation in chat box icons pop up
Blog

Vorschau: IT-Trends 2024 - Teil 1

Technologien entwickeln sich in rasantem Tempo weiter. Deshalb haben wir bei unseren Expert:innen nachgefragt, welche Themen und Herausforderungen in diesem Jahr auf Unternehmen im Bereich IT warten. Lesen Sie jetzt Teil 1 unserer Trendreihe!