public static bool EmbeddedResourceFileExists(string virtualPath)
 {
     var assembly = Assembly.GetExecutingAssembly();
     var resourcename = EmbeddedResource.GetResourceName(virtualPath);
     var result = resourcename != null &&
                   assembly.GetManifestResourceNames()
                       .Contains(resourcename, StringComparer.InvariantCultureIgnoreCase);
     return result;
 }
示例#2
0
        private Template GetTemplate(EmbeddedResource resource)
        {
            Func<TextReader> getContentReader = () => new StreamReader(resource.Assembly.GetManifestResourceStream(resource.GetResourceName()));

            return new Template(resource.GetViewName(),
                                resource.GetPath(),
                                ".",
                                findModelFromViewCollection.FindModelType(getContentReader(), resource.GetViewName()),
                                getContentReader);
        }
示例#3
0
        /// <summary>
        /// Checks if the embedded resource exists
        /// </summary>
        /// <param name="virtualPath">The virtual path to the embedded resource</param>
        /// <returns>Wheter it exists or not</returns>
        public static bool EmbeddedResourceFileExists(string virtualPath)
        {
            var assembly = Assembly.GetExecutingAssembly();

            // Find the assembly level name of the embedded resource from its virtual path
            var resourcename = EmbeddedResource.GetResourceName(virtualPath);

            // Return whether the assembly contains an embedded resource of that name
            return(resourcename != null &&
                   assembly.GetManifestResourceNames()
                   .Contains(resourcename, StringComparer.InvariantCultureIgnoreCase));
        }
示例#4
0
        private static Template GetTemplate(EmbeddedResource resource, IEnumerable <Assembly> availableAssemblies)
        {
            Func <TextReader> getContentReader = () =>
            {
                var stream = resource.Assembly.GetManifestResourceStream(resource.GetResourceName());

                return(new StreamReader(stream ?? new MemoryStream()));
            };

            return(new Template(resource.GetViewName(),
                                resource.GetPath(),
                                ".",
                                FindModelType(getContentReader(), availableAssemblies),
                                getContentReader));
        }