Fr. 44.60

ASP.NET Dynamic Data Unleashed

Englisch · Taschenbuch

Versand in der Regel in 3 bis 5 Wochen

Beschreibung

Mehr lesen

This book will provide a hands-on tutorial to help developers build a good understanding of Dynamic Data at a high level, and will also include an advanced topics section where individual chapters focus on specific, real-world development scenarios and a reference section that will provide detailed documentation of the controls, classes, properties, methods and events specific to Dynamic Data.

The combination of the tutorial, advanced and reference sections in this book will help mid-level (and more experienced) ASP.NET developers master the Dynamic Data framework and will have them coming back for specific information after they have finished reading it. Aside from author

Inhaltsverzeichnis


Preface     xv
PART I Dynamic Data Fundamentals
1 Getting Started     3

Creating a New Dynamic Data Application     4
Creating a Data Model     6
Metadata in Entity Framework and Dynamic Data      12
Field Templates and Dynamic Controls      13
Data Annotations     17
Entity Templates      18
Grid Columns and Dynamic Fields     22
Filter Templates     25
Page Templates and URL Routing     29
Summary      35
2 Entity Framework      37
Understanding Entity Model     38
Creating Entity Model      38
ObjectContext and Simple Queries     43
Associations      43
Querying Across Associations     46
Modifying and Saving Entities      46
LINQ to Entities      47
Query Execution      47
Object Identity     48
Lazy and Eager Loading      49
Projections      49
Sorting     50
Grouping     51
Joins      51
Composing Queries      52
SQL Translation      53
Compiled Queries      55
Extension Methods     57
Entity Lifecycle     60
Tracking Changes      60
Optimistic Concurrency Control      61
Transactions      64
Read-Only ObjectContext      65
Entity Model in Depth     66
Mapping Entity Type to Multiple Tables      71
Entity Type Inheritance     72
Inheritance Mapping     73
Stored Procedures     74
Insert, Update, and Delete Stored Procedures     78
Summary      82
3 Field Templates      85
Read-Only Templates      86
Field Value Display Format     87
Edit and Insert Mode Templates     89
Field Value Edit Format      93
Changing Existing Field Template     93
Data Binding      96
Creating a New Field Template     99
Field Template Lookup Rules     104
Data Annotations      104
Type Names     104
Type Aliases     105
Type Fallback      105
Control Mode      106
Mode Fallback     106
Navigation Columns      107
Field Template Lookup Algorithm      108
Built-in Field Templates      111
Boolean      111
Boolean_Edit      111
Children      111
Children_Insert     111
DateTime      112
DateTime_Edit      112
Decimal_Edit      112
EmailAddress      112
Enumeration      112
Enumeration Edit      113
ForeignKey      114
ForeignKey_Edit      114
Integer_Edit     114
ManyToMany      114
ManyToMany_Edit      115
MultilineText_Edit      115
Text      115
Text_Edit      116
Url      116
Summary      116
4 Entity Templates      117
Creating an Entity Template     120
Composite Entity Templates     122
Generic Entity Templates     123
Dynamic Entity Templates      124
Edit and Insert Entity Templates      129
Entity Template Lookup Rules     131
Template Name     131
Template Mode      132
Entity Template Lookup Algorithm      133
Built-in Entity Templates      134
Summary      135
5 Filter Templates      137
Filtering with LINQ     138
Creating a Filter Template      140
GetQueryable Method      143
OnFilterChanged Method      143
DefaultValue Property      143
Dynamic LINQ Queries     143
Building Search Pages with Filter Templates      145
QueryableFilterRepeater Control     148
Filter Template Lookup Rules      150
Built-in Filter Templates     151
Boolean      151
Enumeration      151
ForeignKey      151
Summary     151
6 Page Templates      153
Built-in Page Templates     154
Details Page Template     155
Edit Page Template      159
List Page Template      163
Insert Page Template     169
Creating a New Page Template      172
Custom Page Templates      174
URL Routing     180
Action Route Parameter     180
Table Route Parameter      180
URL Parameters Versus Query Parameters      181
Dynamic Hyperlinks     182
Route Evaluation and Constraints      183
ViewName Route Parameter     185
Page Template Lookup Rules      185
Summary      186
7 Metadata API      189
Metadata Classes at a Glance     189
Metadata Explorer     191
The MetaModel Class     192
Data Model Registration     192
Accessing MetaTable Objects     193
Global Model Registration     195
Scaffolding Support      196
The MetaTable Class      196
Entity Definition     196
Data Annotations      198
Data Access Support      201
Presentation Logic Support      202
Security Support     203
The MetaColumn Class      203
Property Definition     204
Property Kind     206
Data Annotations      207
The MetaForeignKeyColumn Class      211
Presentation Logic      211
The MetaChildrenColumn Class     213
Summary      214

PART II Dynamic Data in Real-World Applications
8 Implementing Entity Validation     217

Validation Framework      217
Validation Error Messages     219
Validation in Entity Framework     221
Customizing Entity Framework Code Generation     227
Replacing Built-in Code Generator with Text Template     227
Customizing Text Template to Change Context Base Class     228
Customizing Text Template to Generate Static Constructors      229
Automated Testing      230
Creating a Unit Test     231
Test Isolation     234
Testing Validation of Different Properties     235
Integration Testing Versus Unit Testing     237
Declarative Validation     238
RequiredAttribute      238
RangeAttribute     239
StringLengthAttribute     241
RegularExpressionAttribute      242
EnumDataTypeAttribute     244
DataTypeAttribute      245
Imperative Validation      245
CustomValidationAttribute      245
Validating Multiple Rules      250
Reporting Multiple Errors     252
Validating Entity State Changes      256
Accessing Original Property Values with ObjectStateManager     256
Accessing Original Property Values in Validation Methods      257
Handling DBNull Values      259
Summary      261
9 Implementing Business Logic     263
Entity Design     264
Measure Impact of Inheritance on Query Performance      264
Keep the Conceptual and Storage Models as Close as Possible     268
Default Property Values      269
Property Interaction Rules      272
OnPropertyChanging Partial Methods     273
ISavableObject Interface      273
Entity Interaction Rules      275
Implementing Entity Interaction Rules in BeforeSave Methods      276
Implementing Entity Interaction Rules as Entity Methods     277
Implementing Entity Interaction Rules as Context Methods      278
Validation Rules      280
Validation Rule Design      281
Validation of Related Entities     287
Entity Deletion Rules     289
Reusing Entity Validation in Business Rule Methods     290
Saving Changes     292
Managing Transactions     293
Invoking Business Rules in Web Applications      294
Error Handling     296
Business Rules in the Database     298
Integrating Database Validation in Dynamic Data Applications      299
Implementing Validation Rules in Triggers      304
Implementing Business Rules in Stored Procedures      306
Summary      308
10 Building Custom Forms      309
Multimode Entity Templates      310
Custom Templates      310
Dynamic Templates      312
Creating Dynamic Label Control      315
Extending DynamicControl      319
Configuring Field Templates     321
Specifying a Field Template Explicitly      321
Configuring Field Templates Declaratively      322
Configuring Field Templates Programmatically      323
Creating Custom Field Templates     324
Implementing Interaction Between Field Templates      327
Accessing Initial Field Values of Other Columns     330
Accessing Modified Field Values of Other Columns     331
Initial Implementation of the Region_Edit Field Template     332
Improving Encapsulation of Field Templates     334
FieldValue Property     336
FieldValueChanged Event     337
AutoPostBack Property      337
Extending Existing Field Templates      337
Using Entity Templates to Control Field Templates      341
Extending DynamicControl (Again)      343
Taking Advantage of the UnleashedControl in Entity Templates     345
Summary      347
11 Building Dynamic Forms      349
Basic Form Layout     350
Configuring Appearance of Labels      352
Prompt Annotation      354
Description Annotation     356
Configuring Field Templates     357
Making Properties Read-Only     357
Overriding Default Field Templates      359
Configuring Appearance of Values     360
Enum Properties and Enumeration Templates     361
Extending the Enumeration Field Templates     362
Custom Data Types and UI Hints     368
Specifying Field Template Parameters      370
Extending Dynamic Data to Support Control Parameters      372
Field Template Interaction in Dynamic Forms      378
Fixing the FindOtherFieldTemplate Method      381
Creating Additional Dynamic Entity Templates      383
Extending Metadata to Support Entity UI Hints      384
Extending Page Templates to Support EntityUIHintAttribute     386
UnleashedEntity Control     386
Building a Dynamic Two-Column Entity Template      388
Summary      393
12 Building Custom Search Pages     395
Displaying Information from Related Entities      396
Column Sorting Across Related Entities      400
Building Custom Search Pages      401
Overcoming Limitations of Dynamic Filters      403
Using Replacement Filter Controls      405
Filtering Based on Related Entities      407
Initializing Nested Filter Control      409
Implementing Query Logic      411
Using the Parent Filter Template     419
Summary      420
13 Building Dynamic List Pages     421
Extending Filter Lookup Rules     422
Extending the FilterFactory Class     423
Extending the MetaTable Class      427
Extending the MetaModel Class      429
Building Dynamic UI with Custom Properties      432
Implementing Support for Custom Properties     433
Model Providers     434
Sorting of Custom Properties     446
Specifying Sort Expression for Custom Properties in Entity Model     446
Extending Dynamic Data to Support Sort Expression Metadata      447
Generating Metadata Attributes      450
Summary      452
14 Implementing Security     455
Table Scaffolding      456
Route Constraints      457
Web.Config Authorization Rules     458
Limitations of Configuration-Based Rules     461
Metadata Security API     462
Modifying Dynamic Templates to Support the Security API     464
Implementing Row-Level Security     472
Security Annotations      476
AuthorizationAttribute      477
CustomQueryAttribute      487
Summary      493
Index      495

Über den Autor / die Autorin

Oleg Sych, Senior Consultant at AgileThought in Tampa, FL, has been a professional software engineer since 1993. He has built web applications since 2000 and has worked with .NET technologies since 2002. Sych holds MCPD, PSD, and PSM certifications. He received three MVP awards from Microsoft in Visual C# and Visual Studio ALM categories. His interests include software architecture and development process.

Zusammenfassung

This book will provide a hands-on tutorial to help developers build a good understanding of Dynamic Data at a high level, and will also include an advanced topics section where individual chapters focus on specific, real-world development scenarios and a reference section that will provide detailed documentation of the controls, classes, properties, methods and events specific to Dynamic Data.
 
The combination of the tutorial, advanced and reference sections in this book will help mid-level (and more experienced) ASP.NET developers master the Dynamic Data framework and will have them coming back for specific information after they have finished reading it. Aside from author's conference presentations, there is no equivalent to the tutorial section available today. While some bits and pieces of the information in the advanced section may already be available on different web sites and forums, the information is scattered across the Internet. The book will not only show the code to solve specific problems, but also explain why it works, and point out the trade-offs and alternatives. And, although the Dynamic Data reference is available on the MSDN web site, it is incomplete and overwhelms developers with information, muc of which is completely unrelated to Dynamic Data.
 

Produktdetails

Autoren Randy Patterson, Oleg Sych
Verlag Sams
 
Sprache Englisch
Produktform Taschenbuch
Erschienen 01.06.2012
 
EAN 9780672335655
ISBN 978-0-672-33565-5
Seiten 544
Abmessung 180 mm x 230 mm x 30 mm
Gewicht 838 g
Serien Sams
Sams
Thema Naturwissenschaften, Medizin, Informatik, Technik > Informatik, EDV > Internet

Kundenrezensionen

Zu diesem Artikel wurden noch keine Rezensionen verfasst. Schreibe die erste Bewertung und sei anderen Benutzern bei der Kaufentscheidung behilflich.

Schreibe eine Rezension

Top oder Flop? Schreibe deine eigene Rezension.

Für Mitteilungen an CeDe.ch kannst du das Kontaktformular benutzen.

Die mit * markierten Eingabefelder müssen zwingend ausgefüllt werden.

Mit dem Absenden dieses Formulars erklärst du dich mit unseren Datenschutzbestimmungen einverstanden.