Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntityDesign / Design / System / Data / Entity / Design / AspNet / BuildProviderUtils.cs / 1305376 / BuildProviderUtils.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; using System.Diagnostics; using System.CodeDom; using System.CodeDom.Compiler; using System.Globalization; using System.IO; using System.Resources; using System.Web; using System.Web.Compilation; using System.Web.Hosting; namespace System.Data.Entity.Design.AspNet { ////// A place to put common methods used by our build providers /// /// internal class BuildProviderUtils { ////// Default constructor /// private BuildProviderUtils() { } internal static void AddArtifactReference(AssemblyBuilder assemblyBuilder, BuildProvider prov, string virtualPath) { // add the artifact as a resource to the DLL using (Stream input = VirtualPathProvider.OpenFile(virtualPath)) { // derive the resource name string name = BuildProviderUtils.GetResourceNameForVirtualPath(virtualPath); using (Stream resStream = assemblyBuilder.CreateEmbeddedResource(prov, name)) { int byteRead = input.ReadByte(); while (byteRead != -1) { resStream.WriteByte((byte)byteRead); byteRead = input.ReadByte(); } } } } ////// Transforms a virtual path string into a valid resource name. /// /// ///internal static string GetResourceNameForVirtualPath(string virtualPath) { string name = VirtualPathUtility.ToAppRelative(virtualPath); Debug.Assert(name.StartsWith("~/"), "Expected app-relative path to start with ~/"); if (name.StartsWith("~/", StringComparison.OrdinalIgnoreCase)) { name = name.Substring(2); } name = name.Replace("/", "."); Debug.Assert(name.StartsWith(".") == false, "resource name unexpectedly starts with ."); return name; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; using System.Diagnostics; using System.CodeDom; using System.CodeDom.Compiler; using System.Globalization; using System.IO; using System.Resources; using System.Web; using System.Web.Compilation; using System.Web.Hosting; namespace System.Data.Entity.Design.AspNet { ////// A place to put common methods used by our build providers /// /// internal class BuildProviderUtils { ////// Default constructor /// private BuildProviderUtils() { } internal static void AddArtifactReference(AssemblyBuilder assemblyBuilder, BuildProvider prov, string virtualPath) { // add the artifact as a resource to the DLL using (Stream input = VirtualPathProvider.OpenFile(virtualPath)) { // derive the resource name string name = BuildProviderUtils.GetResourceNameForVirtualPath(virtualPath); using (Stream resStream = assemblyBuilder.CreateEmbeddedResource(prov, name)) { int byteRead = input.ReadByte(); while (byteRead != -1) { resStream.WriteByte((byte)byteRead); byteRead = input.ReadByte(); } } } } ////// Transforms a virtual path string into a valid resource name. /// /// ///internal static string GetResourceNameForVirtualPath(string virtualPath) { string name = VirtualPathUtility.ToAppRelative(virtualPath); Debug.Assert(name.StartsWith("~/"), "Expected app-relative path to start with ~/"); if (name.StartsWith("~/", StringComparison.OrdinalIgnoreCase)) { name = name.Substring(2); } name = name.Replace("/", "."); Debug.Assert(name.StartsWith(".") == false, "resource name unexpectedly starts with ."); return name; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- FormatVersion.cs
- DataKeyArray.cs
- controlskin.cs
- TagPrefixCollection.cs
- controlskin.cs
- TransformerTypeCollection.cs
- DataKeyArray.cs
- BaseResourcesBuildProvider.cs
- ApplicationBuildProvider.cs
- coordinatorfactory.cs
- CheckBox.cs
- FrameworkTemplate.cs
- QilGenerator.cs
- Screen.cs
- DecimalAnimationBase.cs
- ByteAnimation.cs
- EntityDescriptor.cs
- ProgressBar.cs
- SortDescription.cs
- FontSourceCollection.cs
- ForwardPositionQuery.cs
- RelatedEnd.cs
- ExeConfigurationFileMap.cs
- UnicodeEncoding.cs
- XmlComplianceUtil.cs
- TemplateKey.cs
- FutureFactory.cs
- UshortList2.cs
- LoginCancelEventArgs.cs
- SecurityException.cs
- BamlBinaryReader.cs
- KeyGestureConverter.cs
- _BaseOverlappedAsyncResult.cs
- ObjectToIdCache.cs
- WindowsIdentity.cs
- SqlParameterCollection.cs
- ISAPIWorkerRequest.cs
- SmuggledIUnknown.cs
- DataGridCellsPanel.cs
- AddInIpcChannel.cs
- AssociatedControlConverter.cs
- Point3DCollectionValueSerializer.cs
- DocumentPageView.cs
- CombinedGeometry.cs
- TimelineCollection.cs
- SwitchCase.cs
- VisualCollection.cs
- EndPoint.cs
- DataGridViewRowPostPaintEventArgs.cs
- DictionaryTraceRecord.cs
- CFStream.cs
- CreateUserWizardStep.cs
- ImageKeyConverter.cs
- InboundActivityHelper.cs
- SlipBehavior.cs
- ApplicationServiceManager.cs
- TemplateGroupCollection.cs
- _Semaphore.cs
- XmlEnumAttribute.cs
- SqlCachedBuffer.cs
- Buffer.cs
- AuthenticationConfig.cs
- WorkflowServiceAttributes.cs
- CalendarAutoFormat.cs
- Polygon.cs
- SiteIdentityPermission.cs
- FontFamilyValueSerializer.cs
- TextBoxRenderer.cs
- ByteStreamGeometryContext.cs
- DbParameterCollection.cs
- DocumentApplicationJournalEntry.cs
- StrongNameKeyPair.cs
- TextElementEditingBehaviorAttribute.cs
- ConnectionStringsExpressionBuilder.cs
- MeshGeometry3D.cs
- DataViewSettingCollection.cs
- MetadataResolver.cs
- JsonStringDataContract.cs
- InstanceNotReadyException.cs
- SelectionItemProviderWrapper.cs
- DataPagerFieldItem.cs
- InputMethodStateTypeInfo.cs
- XamlTypeMapperSchemaContext.cs
- OdbcConnectionString.cs
- ObjectListFieldsPage.cs
- InfoCardSymmetricAlgorithm.cs
- DataTableClearEvent.cs
- ProgressBar.cs
- PenContexts.cs
- ToolStripRenderer.cs
- ScrollContentPresenter.cs
- ICspAsymmetricAlgorithm.cs
- CreateRefExpr.cs
- _IPv4Address.cs
- XmlSerializerAssemblyAttribute.cs
- RsaSecurityToken.cs
- SplitContainer.cs
- DescriptionAttribute.cs
- DescendentsWalker.cs
- MultiView.cs