所需积分/C币:50 2019-09-07 09:24:02 4.22MB PDF
收藏 收藏 1

Explore advanced .NET APIs and create a basic .NET core library with dynamic code generation and metadata inspection to be used by other libraries or client applications. This book starts with the benefits of .NET including its fundamental tasks and tools where you will learn .NET SDK tools and the
Exploring the. NET Core 3.0 Runtime: Through Code Generation and Metadata Inspection Roger villela Sao paulo, sao paulo, brazil ISBN-13(pbk):978-1-4842-5112-6 ISBN-13( electronic:978-1-4842-5113-3 htps:// doi. org/10.1007/978-1-4842-51133 Copyright o 2019 by Roger Villela This work is subject to copyright All rights are reserved by the Publisher, whether the whole part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software or by similar or dissimilar methodology now known or hereafter developed Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark The use in this publication of trade names, trademarks, service marks, and similar terms, even if hey are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made. The publisher makes no warranty, express or implied, with respect to the material contained herein. Managing Director, Apress Media LLC: Welmoed Spahr Acquisitions Editor: Smriti Srivastava Development Editor: Matthew Moodie Coordinating Editor: Shrikant Vishwakarma Cover designed by eStudio calamar CoverimagedesignedbyFreepik(www.freepik.com) Distributed to the book trade worldwide by springer Science+ Business Media New York 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax(201)348-4505 e-mailorders-ny@springer-sbm.com,orvisitwww.springeronline.com.ApressMedia,Llcisa California LLC and the sole member (owner) is Springer Science Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation Forinformationontranslationspleasee-mailrights@apress.comorvisitwww.apress.com/ rights-permissions Apress titles may be purchased in bulk for academic, corporate, or promotional use e Book versions and licenses are also available for most titles. For more information, reference our Print andebookBulkSaleswebpageatwww.apress.com/bulk-sales. Any source code or other supplementary material referenced by the author in this book is available toreadersonGithubviathebooksproductpagelocatedatwww.apress.com/978-1-4842-5112-6 Formoredetailedinformationpleasevisitwww.apress.com/source-code. Printed on acid-free paper This book is dedicated to my mother Marina roel de oliveira( f From 1952, January 14, to 2017, March 17 Table of contents About the author ■■■■口■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■口■■■■■■■■■■■■■■■■■口■■■■■■■■口■■■■国■■口■■■ About the technical reviewer Acknowledgments ummmmaaanaamamaamammmaamamammmmaanamm Xiii ntroduction XV Chapter 1: Exploring NET Core.man Acronyms. About the Microsoft Visual Studio 2019 Support for NET Core.mmmmmanmmmm.5 Tutorial: Using NeT Core SDK Previews and Configuration for Using the NET Core SDK Previews 889 Adding a Class Library (net core) project Choosing the Target. NET Core SDK Changing the Project Config File 10 Using a TFM on the Project Config File.m.mmmnmamemnnmmmmnn, 12 Using NET Standard 12 List of tems 14 Summary.mmm maaeeeannn 重夏面国面重面面国面重面日面道面国面重面面国面面重重面面道面重面面面面 D0's, 33 Don'ts TABLE OF CONTENTS Chapter 2: About Static NET Assemblya ■■■■■■■口■■■■■■■■■■■■■■■■■■■口■■口■■口■■■■■ 35 Acronyms 35 Development Environment.mmnmmnammmmamnmmnmmmamnmmam..nn. 36 The static. NET Assembly Metadata System. About the. NET Assembly Summary D0's.79 Don'ts∴ Chapter 3: Dynamic NET Assemblies: Defining Dynamic .NeT Types mamman ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■口■■■■■■■■口■■■■■■■■■■■■■■■■■■■■■■■ 83 About Dynamic Assemblies..mmm......m.mm.. 83 Organization of RvJ core NET Types 89 Purpose of NeT Types 89 NET Type Interfaces 90 Builders of the System. Reflection. Emit Namespace 90 The Flags and Definition of net Types mmmm. mmmmmnn 100 About System Reflection Emit Type Using an Assembly Type Builder. Naming the Dynamic, NET Assembly………103 Assembly BuilderAccess Enum Options. Defining a Dynamic. NEt Type 108 Defining Dynamic. NeT Field Members for a Dynamic NET Type. m..n 112 Instantiating a Dynamic. NET Type and Assigning a value for a Dynamic NET Field.meeno 15 Summary D0'S.17 Don'ts 119 TABLE OF CONTENTS Chapter 4: Working with Dynamic NET Properties mmmmmmmmm 121 About Dynamic NET Properties 121 The getter and setter Methods 121 The0 ther methods…12 The prefixes get and set…,,.,.,.,,,…,,…,……124 The specialname and rtspecialname Attributes. Implementing a Dynamic NeT Property....m...............138 Summary 153 Dos 153 Don'ts 153 Chapter5: Working with the codeDOM,…,…,,,m,……155 About the codedom 155 Code generation Using the codedOM 156 Summary. 176 Dos 177 Don'ts Index 179 About the author Roger Villela is an independent software engineer and entrepreneur with 30 years of experience. Currently, he writes books and educates people about technology, specializing in the inner works of the following Microsoft development platforms Microsoft Windows operating system base services Microsoft Universal Windows Platform(UWP Microsoft winrt Microsoft. NET Framework implementation of the runtime environment(CLR) Roger's work is based on Microsoft Visual Studio(Microsoft Windows) and Intel Parallel Studio XE Microsoft Windows), using the following programming languages, extensions, and projections C++ Assembly(Intel IA-32/Intel 64 Component extensions for runtimes(C++/CLI and C++/CX About the technical reviewer Carsten Thomsen is primarily a back-end developer but works with smaller, front-end bits as well. he has authored and reviewed a number of books and has created numerous Microsoft Learning courses, all related to software development. He works as a freelancer/ contractor in various countries in Europe, using Azure, Visual Studio, Azure DevOps, and github. being an exceptional troubleshooter who asks the right questions, he also enjoys architecture, research analysis, development, testing, and bug fixing. Carsten is an excellent communicator with great mentoring and team-lead skills and excels at researching and presenting new materia Acknowledgments First, I would like to thank the team at apress who worked with me on this book: Smriti Srivastava(acquisitions editor ), Shrikant Vishwakarma (coordinating editor ), Matthew Moodie(development editor ) Welmoed Spahr(managing director), and Carsten Thomsen (technical reviewer .It was a pleasure and an honor to work with such a highly professional team Thanks to both my parents and a special thanks to my dad, gilberto Thanks to my aunts, Marinete and Maria Aguida; to my cousin, Silvana and to my brother eder and my brother marlos and his wife, janina, as well as my nephew Gabriel, and nieces, Livia and rafaela. i would also like to thank my professional colleagues and friends who have worked with me for the past decade XIII

试读 127P Apress.Exploring.the.NET.Core.3.0.Runtime.pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
    CS_CHP 不错的资料,谢谢分享!
    • 分享王者

    关注 私信 TA的资源
    Apress.Exploring.the.NET.Core.3.0.Runtime.pdf 50积分/C币 立即下载


    50积分/C币 立即下载 >