added introduction video to EFCore
continuous-integration/drone/push Build is failing Details

master
Marc CHEVALDONNE 2 years ago
parent 90e5203ea0
commit a0ee62a7d5

@ -1,627 +0,0 @@
{
"entrypoints": [
"main"
],
"origins": {
"529": [
89,
103,
532,
610,
915,
529
],
"915": [
85,
89,
103,
529,
532,
610,
918,
915
],
"972": [
972
],
"17896441": [
532,
915,
918
],
"61419323": [
66
],
"main": [
303,
532,
179
],
"runtime~main": [
179,
532,
303
],
"01a85c17": [
532,
13
],
"0e384e19": [
671
],
"14eb3368": [
532,
817
],
"17d546e5": [
744
],
"1a4cf5a6": [
508
],
"1be78505": [
532,
972
],
"1f391b9e": [
532,
915,
85
],
"393be207": [
414
],
"47a8f85a": [
174
],
"47f773d3": [
155
],
"553b77a1": [
769
],
"5e48264b": [
630
],
"5ee20ecc": [
39
],
"6875c492": [
529,
532,
915,
610
],
"6af6a94a": [
957
],
"71b8442c": [
930
],
"723f5759": [
210
],
"7b660c8c": [
735
],
"814f3328": [
535
],
"82167a88": [
269
],
"82e8f913": [
225
],
"8882dd50": [
726
],
"8e1fb359": [
377
],
"935f2afb": [
53
],
"9e4087bc": [
608
],
"a5b053fd": [
823
],
"a6aa9e1f": [
529,
532,
915,
89
],
"b2a93362": [
597
],
"b56df1ef": [
289
],
"c1a04c3a": [
142
],
"c325cb38": [
818
],
"c4f5d8e4": [
532,
195
],
"ccc49370": [
529,
532,
915,
103
],
"d1c2ce71": [
391
],
"d58bd024": [
315
],
"e05a34b8": [
399
],
"e764c497": [
765
],
"ec05837e": [
542
],
"f1ec5097": [
523
],
"f91011ca": [
676
],
"styles": [
13,
85,
89,
103,
179,
195,
303,
514,
529,
610,
817,
915,
918,
532
]
},
"assets": {
"13": {
"js": [
{
"file": "assets/js/01a85c17.b2d6924e.js",
"hash": "e99f113d124548d8",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/01a85c17.b2d6924e.js"
}
]
},
"39": {
"js": [
{
"file": "assets/js/5ee20ecc.f04fe265.js",
"hash": "01c0749ec95493b9",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/5ee20ecc.f04fe265.js"
}
]
},
"53": {
"js": [
{
"file": "assets/js/935f2afb.32b31107.js",
"hash": "af4cd06025624c39",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/935f2afb.32b31107.js"
}
]
},
"66": {
"js": [
{
"file": "assets/js/61419323.7e5ea537.js",
"hash": "09d0059db899e5c6",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/61419323.7e5ea537.js"
}
]
},
"85": {
"js": [
{
"file": "assets/js/1f391b9e.c4f43e79.js",
"hash": "3341758495276e80",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/1f391b9e.c4f43e79.js"
}
]
},
"89": {
"js": [
{
"file": "assets/js/a6aa9e1f.471c11f4.js",
"hash": "ebe5c25b169d6871",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/a6aa9e1f.471c11f4.js"
}
]
},
"103": {
"js": [
{
"file": "assets/js/ccc49370.d453ab1d.js",
"hash": "806db000ef656642",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/ccc49370.d453ab1d.js"
}
]
},
"142": {
"js": [
{
"file": "assets/js/c1a04c3a.10b2c0ca.js",
"hash": "5a95bcbbe10417b0",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/c1a04c3a.10b2c0ca.js"
}
]
},
"155": {
"js": [
{
"file": "assets/js/47f773d3.7b182aac.js",
"hash": "caaeb4c34b650b7a",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/47f773d3.7b182aac.js"
}
]
},
"174": {
"js": [
{
"file": "assets/js/47a8f85a.92d5255e.js",
"hash": "5001fb2ed8c35c31",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/47a8f85a.92d5255e.js"
}
]
},
"179": {
"js": [
{
"file": "assets/js/main.c00a390f.js",
"hash": "89bdf2071a8cece4",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/main.c00a390f.js"
}
]
},
"195": {
"js": [
{
"file": "assets/js/c4f5d8e4.87806d99.js",
"hash": "37649cd38b0784bd",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/c4f5d8e4.87806d99.js"
}
]
},
"210": {
"js": [
{
"file": "assets/js/723f5759.2814a90e.js",
"hash": "a3da15792d1920fb",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/723f5759.2814a90e.js"
}
]
},
"225": {
"js": [
{
"file": "assets/js/82e8f913.f67088fd.js",
"hash": "bccd51edfa26b52e",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/82e8f913.f67088fd.js"
}
]
},
"269": {
"js": [
{
"file": "assets/js/82167a88.01192d91.js",
"hash": "0d187f5d9235df01",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/82167a88.01192d91.js"
}
]
},
"289": {
"js": [
{
"file": "assets/js/b56df1ef.b9ba1abf.js",
"hash": "40ef5e280e723e28",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/b56df1ef.b9ba1abf.js"
}
]
},
"303": {
"js": [
{
"file": "assets/js/runtime~main.99c6bd3c.js",
"hash": "82e67b3b49cb0fe6",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/runtime~main.99c6bd3c.js"
}
]
},
"315": {
"js": [
{
"file": "assets/js/d58bd024.a47e44b2.js",
"hash": "c7366faf2c7594dd",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/d58bd024.a47e44b2.js"
}
]
},
"377": {
"js": [
{
"file": "assets/js/8e1fb359.dd63536b.js",
"hash": "076033b55663c37c",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/8e1fb359.dd63536b.js"
}
]
},
"391": {
"js": [
{
"file": "assets/js/d1c2ce71.5414300d.js",
"hash": "5b5d2566ad3f91ec",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/d1c2ce71.5414300d.js"
}
]
},
"399": {
"js": [
{
"file": "assets/js/e05a34b8.6e1db066.js",
"hash": "1f0eb933a8ce7818",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/e05a34b8.6e1db066.js"
}
]
},
"414": {
"js": [
{
"file": "assets/js/393be207.dba14468.js",
"hash": "6cc1b85ffc8e166b",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/393be207.dba14468.js"
}
]
},
"508": {
"js": [
{
"file": "assets/js/1a4cf5a6.9c0d66f0.js",
"hash": "8a40972c6b43c1c3",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/1a4cf5a6.9c0d66f0.js"
}
]
},
"523": {
"js": [
{
"file": "assets/js/f1ec5097.6fdf6262.js",
"hash": "f3e47dabd2ab22a5",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/f1ec5097.6fdf6262.js"
}
]
},
"529": {
"js": [
{
"file": "assets/js/529.fbcd9089.js",
"hash": "bbcfe4bdd3ef59c3",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/529.fbcd9089.js"
}
]
},
"532": {
"css": [
{
"file": "assets/css/styles.4f49509e.css",
"hash": "496eade64d8c61a3",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/css/styles.4f49509e.css"
}
]
},
"535": {
"js": [
{
"file": "assets/js/814f3328.7fb9099f.js",
"hash": "f6d92d1575f0186f",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/814f3328.7fb9099f.js"
}
]
},
"542": {
"js": [
{
"file": "assets/js/ec05837e.0308ad5b.js",
"hash": "dd9d741df8a288c5",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/ec05837e.0308ad5b.js"
}
]
},
"597": {
"js": [
{
"file": "assets/js/b2a93362.20d4c5dc.js",
"hash": "b76c18385113f097",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/b2a93362.20d4c5dc.js"
}
]
},
"608": {
"js": [
{
"file": "assets/js/9e4087bc.033d5b85.js",
"hash": "4c987df074009024",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/9e4087bc.033d5b85.js"
}
]
},
"610": {
"js": [
{
"file": "assets/js/6875c492.6968b20d.js",
"hash": "e7f7a7e42913f083",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/6875c492.6968b20d.js"
}
]
},
"630": {
"js": [
{
"file": "assets/js/5e48264b.d76cd4be.js",
"hash": "77b02d614a54eda6",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/5e48264b.d76cd4be.js"
}
]
},
"671": {
"js": [
{
"file": "assets/js/0e384e19.932bac32.js",
"hash": "b34387fcf6bcb352",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/0e384e19.932bac32.js"
}
]
},
"676": {
"js": [
{
"file": "assets/js/f91011ca.87004fb0.js",
"hash": "34acd1e9f2d08f56",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/f91011ca.87004fb0.js"
}
]
},
"726": {
"js": [
{
"file": "assets/js/8882dd50.c0ea4578.js",
"hash": "b00ac75104bdc826",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/8882dd50.c0ea4578.js"
}
]
},
"735": {
"js": [
{
"file": "assets/js/7b660c8c.b8b4f2ee.js",
"hash": "3432cf5dc538ead0",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/7b660c8c.b8b4f2ee.js"
}
]
},
"744": {
"js": [
{
"file": "assets/js/17d546e5.ef034888.js",
"hash": "a0c09cbf2e36a606",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/17d546e5.ef034888.js"
}
]
},
"765": {
"js": [
{
"file": "assets/js/e764c497.da6c3603.js",
"hash": "e58836079be2a81f",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/e764c497.da6c3603.js"
}
]
},
"769": {
"js": [
{
"file": "assets/js/553b77a1.f6c5caae.js",
"hash": "c7ce27c752c113b8",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/553b77a1.f6c5caae.js"
}
]
},
"817": {
"js": [
{
"file": "assets/js/14eb3368.5b93bcdd.js",
"hash": "67376a224558f689",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/14eb3368.5b93bcdd.js"
}
]
},
"818": {
"js": [
{
"file": "assets/js/c325cb38.61b51aa2.js",
"hash": "9cba179ccff99440",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/c325cb38.61b51aa2.js"
}
]
},
"823": {
"js": [
{
"file": "assets/js/a5b053fd.e7834c2f.js",
"hash": "368b1f2baf17e80c",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/a5b053fd.e7834c2f.js"
}
]
},
"915": {
"js": [
{
"file": "assets/js/915.cfa0761f.js",
"hash": "185bdf82a182c861",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/915.cfa0761f.js"
}
]
},
"918": {
"js": [
{
"file": "assets/js/17896441.12695fe9.js",
"hash": "8dfdf542df2a6a93",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/17896441.12695fe9.js"
}
]
},
"930": {
"js": [
{
"file": "assets/js/71b8442c.f1915e06.js",
"hash": "36fbd4a0ca1a5904",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/71b8442c.f1915e06.js"
}
]
},
"957": {
"js": [
{
"file": "assets/js/6af6a94a.8845daea.js",
"hash": "dd41cbfa946c75b4",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/6af6a94a.8845daea.js"
}
]
},
"972": {
"js": [
{
"file": "assets/js/972.5cec2c40.js",
"hash": "c9d96d346a8c3404",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/972.5cec2c40.js"
},
{
"file": "assets/js/1be78505.b601f816.js",
"hash": "8b78f9132df5c521",
"publicPath": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/assets/js/1be78505.b601f816.js"
}
]
}
}
}

@ -1,344 +0,0 @@
/*
* AUTOGENERATED - DON'T EDIT
* Your edits in this file will be overwritten in the next build!
* Modify the docusaurus.config.js file at your site's root instead.
*/
export default {
"title": "C# .NET samples",
"tagline": "Best samples ever",
"url": "https://codefirst.iut.uca.fr",
"baseUrl": "/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/",
"onBrokenLinks": "ignore",
"onBrokenMarkdownLinks": "warn",
"favicon": "img/favicon.ico",
"trailingSlash": true,
"organizationName": "mch",
"projectName": "mchsamples-.net-core",
"i18n": {
"defaultLocale": "en",
"locales": [
"en"
],
"path": "i18n",
"localeConfigs": {}
},
"presets": [
[
"classic",
{
"docs": {
"sidebarPath": "/Users/marcchevaldonne/Documents/temp/demos2022/mchsamples-.net-core/Documentation/docusaurus/sidebars.js",
"editUrl": "https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/"
},
"blog": {
"showReadingTime": true,
"editUrl": "https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/"
},
"theme": {
"customCss": "/Users/marcchevaldonne/Documents/temp/demos2022/mchsamples-.net-core/Documentation/docusaurus/src/css/custom.css"
}
}
]
],
"themeConfig": {
"navbar": {
"title": "C# .NET samples",
"logo": {
"alt": "My Site Logo",
"src": "img/logo.svg"
},
"items": [
{
"type": "doc",
"docId": "intro",
"position": "left",
"label": "Samples"
},
{
"to": "/blog",
"label": "Blog",
"position": "left"
},
{
"href": "https://codefirst.iut.uca.fr/git/mchSamples_.NET/mchsamples-.net-core",
"label": "Code#0",
"position": "right"
}
],
"hideOnScroll": false
},
"footer": {
"style": "dark",
"links": [
{
"title": "Docs",
"items": [
{
"label": "Tutorial",
"to": "/docs/intro"
}
]
},
{
"title": "Community",
"items": [
{
"label": "LinkedIn",
"href": "https://www.linkedin.com/company/code-1st/"
}
]
},
{
"title": "More",
"items": [
{
"label": "Blog",
"to": "/blog"
},
{
"label": "Code#0",
"href": "https://codefirst.iut.uca.fr/git/mchSamples_.NET/mchsamples-.net-core"
}
]
}
],
"copyright": "Copyright © 2022 My Project, Inc. Built with Docusaurus."
},
"prism": {
"additionalLanguages": [
"csharp"
],
"theme": {
"plain": {
"color": "#393A34",
"backgroundColor": "#f6f8fa"
},
"styles": [
{
"types": [
"comment",
"prolog",
"doctype",
"cdata"
],
"style": {
"color": "#999988",
"fontStyle": "italic"
}
},
{
"types": [
"namespace"
],
"style": {
"opacity": 0.7
}
},
{
"types": [
"string",
"attr-value"
],
"style": {
"color": "#e3116c"
}
},
{
"types": [
"punctuation",
"operator"
],
"style": {
"color": "#393A34"
}
},
{
"types": [
"entity",
"url",
"symbol",
"number",
"boolean",
"variable",
"constant",
"property",
"regex",
"inserted"
],
"style": {
"color": "#36acaa"
}
},
{
"types": [
"atrule",
"keyword",
"attr-name",
"selector"
],
"style": {
"color": "#00a4db"
}
},
{
"types": [
"function",
"deleted",
"tag"
],
"style": {
"color": "#d73a49"
}
},
{
"types": [
"function-variable"
],
"style": {
"color": "#6f42c1"
}
},
{
"types": [
"tag",
"selector",
"keyword"
],
"style": {
"color": "#00009f"
}
}
]
},
"darkTheme": {
"plain": {
"color": "#F8F8F2",
"backgroundColor": "#282A36"
},
"styles": [
{
"types": [
"prolog",
"constant",
"builtin"
],
"style": {
"color": "rgb(189, 147, 249)"
}
},
{
"types": [
"inserted",
"function"
],
"style": {
"color": "rgb(80, 250, 123)"
}
},
{
"types": [
"deleted"
],
"style": {
"color": "rgb(255, 85, 85)"
}
},
{
"types": [
"changed"
],
"style": {
"color": "rgb(255, 184, 108)"
}
},
{
"types": [
"punctuation",
"symbol"
],
"style": {
"color": "rgb(248, 248, 242)"
}
},
{
"types": [
"string",
"char",
"tag",
"selector"
],
"style": {
"color": "rgb(255, 121, 198)"
}
},
{
"types": [
"keyword",
"variable"
],
"style": {
"color": "rgb(189, 147, 249)",
"fontStyle": "italic"
}
},
{
"types": [
"comment"
],
"style": {
"color": "rgb(98, 114, 164)"
}
},
{
"types": [
"attr-name"
],
"style": {
"color": "rgb(241, 250, 140)"
}
}
]
},
"magicComments": [
{
"className": "theme-code-block-highlighted-line",
"line": "highlight-next-line",
"block": {
"start": "highlight-start",
"end": "highlight-end"
}
}
]
},
"colorMode": {
"defaultMode": "light",
"disableSwitch": false,
"respectPrefersColorScheme": false
},
"docs": {
"versionPersistence": "localStorage",
"sidebar": {
"hideable": false,
"autoCollapseCategories": false
}
},
"metadata": [],
"tableOfContents": {
"minHeadingLevel": 2,
"maxHeadingLevel": 3
}
},
"baseUrlIssueBanner": true,
"onDuplicateRoutes": "warn",
"staticDirectories": [
"static"
],
"customFields": {},
"plugins": [],
"themes": [],
"scripts": [],
"stylesheets": [],
"clientModules": [],
"titleDelimiter": "|",
"noIndex": false
};

@ -11,6 +11,15 @@ description: 'Start here'
Entity Framework (EF) Core est un ORM (Object-Relational Mapper) qui permet aux développeurs .NET de gérer de manière simple, légère et extensible, des bases de données.
EF permet de gérer de nombreux *providers* (SQL Server, SQLite, Cosmos, ...) de manière transparente.
EF vous permet également de mettre à jour vos bases de données et d'exécuter des requêtes sans avoir à écrire la moindre requête SQL. Vous pouvez passer par LINQ to SQL qui apportera plus de lisibilité et permettra au compilateur de vous aider à détecter vos erreurs.
## Vue d'ensemble
La suite de cette section est composée d'exemples de code commentés. Pour mieux les appréhender, voici tout d'abord un ensemble de vidéos d'introduction. Leur but n'est pas d'être exhaustives, mais seulement de vous permettre de visualiser ce qu'il est possible de faire avec Entity Framework Core, et ainsi de parcourir plus efficacement les tutoriels et exemples détaillés.
### Introduction : une base, une table, quelques requêtes...
Cette première vidéo sert d'introduction. Elle présente Entity Framework Core, comment créer une base de données, lui ajouter une table, la remplir et exécuter des requêtes.
<iframe allowfullscreen src='https://opencast.dsi.uca.fr/paella/ui/embed.html?id=a5261c69-ecba-4cf7-916a-50113893534e' width='432' height='270' frameborder='0' scrolling='no' marginwidth='0' marginheight='0' allowfullscreen='true' webkitallowfullscreen='true' mozallowfullscreen='true' ></iframe>
---
:::note
@ -19,7 +28,7 @@ Différentes solutions existent avec EF pour gérer une base de données dont le
---
## Plan
Les exemples sont organisés selon le plan suivant:
1. [**Fundamentals** :](/docs/Entity-Framework/Fundamentals)
1. [**Fundamentals** :](/docs/category/1. Fundamentals)
Dans cette partie, je donnerai quelques notions pour se connecter à une base à l'aide de chaîne de connection (*connection strings*), comment utiliser des *providers de tests...*.
Il s'agira en conséquence d'exemples simples manquants d'explications sur certains points, car ils seront présentés plus tard.
* [**1.1. Connection Strings**](/docs/Entity-Framework/Fundamentals/ConnectionStrings) : montre comment utiliser une chaîne de connexion SQL Server ou SQLite.
@ -37,7 +46,7 @@ Ce chapitre s'attardera sur le lien entre le modèle et la base de données. En
* [**2.7. : Value Generation**](/docs/Entity-Framework/Model/ValueGeneration) : explique comment faire générer des valeurs automatiquement lors de l'insertion ou de la mise à jour
* [**2.8 : Data Seeding before Entity Framework 2.1**](/docs/Entity-Framework/Model/DataSeedingBeforeEF2_1) : explique comment utiliser un stub (méthode qui était recommandée avant EF Core 2.1)
* [**2.9 : Data Seeding**](/docs/Entity-Framework/Model/DataSeeding) : explique comment utiliser un stub (méthode recommandée depuis EF Core 2.1)
* [**Relationships**](/docs/Entity-Framework/Model/Relationships) : en cliquant [ici](/docs/Entity-Framework/Model/Relationships), vous aurez plus de détails sur les relations entre entités
* [**Relationships**](/docs/category/2.10. Relationships) : en cliquant [ici](/docs/category/2.10. RelationshipsRelationships), vous aurez plus de détails sur les relations entre entités
* [**ex_042_010 : Single Property navigation with data annotations**](ex_042_010_SinglePropertyNavigation_conventions) : montre comment une relation d'association est traduite par *EF Core* lorsque cette association est unidirectionnelle entre deux entités, en utilisant les conventions d'écriture et/ou les annotations de données.
* [**ex_042_011 : Single Property navigation with Fluent API**](ex_042_011_SinglePropertyNavigation_FluentAPI) : montre comment une relation d'association est traduite par *EF Core* lorsque cette association est unidirectionnelle entre deux entités, en utilisant la *FLuent API*.
* [**ex_042_012 : One To One with data annotations**](ex_042_012_OneToOne_conventions) : montre comment une relation d'association *One To One* est traduite par *EF Core* lorsque cette association est bidirectionnelle entre deux entités, en utilisant l'*annotation de données*.

@ -10,7 +10,7 @@ const config = {
tagline: 'Best samples ever',
url: 'https://codefirst.iut.uca.fr',
baseUrl: '/documentation/mchSamples_.NET/docusaurus/mchsamples-.net-core/',
onBrokenLinks: 'ignore',
onBrokenLinks: 'throw',
onBrokenMarkdownLinks: 'warn',
favicon: 'img/favicon.ico',
trailingSlash: true,

@ -19,7 +19,7 @@ namespace ex_005_002_copie_de_tableaux
{
OutputEncoding = System.Text.Encoding.UTF8;
WindowHeight = LargestWindowHeight;
//WindowHeight = LargestWindowHeight;
//COPIE DE TABLEAUX
@ -28,7 +28,7 @@ namespace ex_005_002_copie_de_tableaux
//1. copie de références
WriteLine("\nCopie de références\n");
//préparation des tableaux
int[] tab6 = { 1, 2, 3 };
int[] tab6 = { 6, 2, 3 };
int[] tab7 = { 5, 6, 7, 8, 9, 10 };
WriteLine("contenu de tab6");
foreach (int i in tab6) Write($"{i} ");

@ -4,7 +4,7 @@ using System.Collections.ObjectModel;
namespace ex_026_000_ClassLibrary
{
public class Album
class Album
{
public long Id { get; private set; }

@ -1,7 +1,11 @@
using System;
using System.Runtime.CompilerServices;
[assembly:InternalsVisibleTo("ex_026_001_xUnit_Fact")]
namespace ex_026_000_ClassLibrary
{
public class Artist : IEquatable<Artist>
class Artist : IEquatable<Artist>
{
public string FirstName
{

@ -26,6 +26,23 @@ namespace ex_026_001_xUnit_Fact
new Artist("Ron", "Carter")),
new Artist("Tony", "Williams")
};
yield return new object[]
{
false,
new Artist[]
{
new Artist("Miles", "Davis"),
new Artist("Wayne", "Shorter"),
new Artist("Herbie", "Hancock"),
new Artist("Ron", "Carter")
},
new Album("Miles Smiles", new DateTime(1967, 1, 1),
new Artist("Miles", "Davis"),
new Artist("Wayne", "Shorter"),
new Artist("Herbie", "Hancock"),
new Artist("Ron", "Carter")),
new Artist("Ron", "Carter")
};
}
[Theory]

Loading…
Cancel
Save