EmbeddedResourceVirtualPathProvider icon indicating copy to clipboard operation
EmbeddedResourceVirtualPathProvider copied to clipboard

EmbeddedResourcePath Regex Parser Bug

Open ylbillyli opened this issue 7 years ago • 2 comments

Take FormFactory as example, following step 2 in this link adding

<link href="/Content/FormFactory/FormFactory.css" rel="stylesheet" type="text/css"/>

EXPECT:      FormFactory.css to load correctly ACTUAL:      404 not found

The embedded resource namespace is FormFactory.Content.FormFactory.FormFactory.css

The EmbeddedResourcePath Regex Parsing code on line 17 incorrectly produce directory name as Content.FormFactory and therefore I have to use the url becomes ~/Content.FormFactory/FormFactory.css

SUGGEST to fix this simply by replacing any dots with slashes on the parsed directory name on line 43

ylbillyli avatar Sep 13 '18 02:09 ylbillyli

What's your assembly name?

On Thu, 13 Sep 2018 at 03:15, Billy [email protected] wrote:

Take FormFactory as example, following step 2 in this link http://formfactoryaspmvc.azurewebsites.net/ adding

EXPECT: FormFactory.css to load correctly ACTUAL: 404 not found

The embedded resource namespace is FormFactory.Content.FormFactory.FormFactory.css

The EmbeddedResourcePath Regex Parsing code on line 17 https://github.com/mcintyre321/EmbeddedResourceVirtualPathProvider/blob/2f38cf2bc0e72052e03b4f36483d4ff45809fc45/EmbeddedResourceVirtualPathProvider/Vpp.cs#L17 incorrectly produce directory name as Content.FormFactory and therefore I have to use the url becomes ~/Content.FormFactory/FormFactory.css

SUGGEST to fix this simply by replacing any dots with slashes on the parsed directory name on line 43 https://github.com/mcintyre321/EmbeddedResourceVirtualPathProvider/blob/2f38cf2bc0e72052e03b4f36483d4ff45809fc45/EmbeddedResourceVirtualPathProvider/Vpp.cs#L43

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/mcintyre321/EmbeddedResourceVirtualPathProvider/issues/41, or mute the thread https://github.com/notifications/unsubscribe-auth/AAQ0-iIn5j-lIwkAfZiseDNeIRodKOLqks5uab-pgaJpZM4WmdID .

mcintyre321 avatar Sep 13 '18 07:09 mcintyre321

Oh you're talking about FF. :)

It looks to me that the FormFactory example site is using <link href="/Content/FormFactory/FormFactory.css" rel="stylesheet" type="text/css"/> and it is working fine?

There's a problem which is that making something an Embedded Resource is a lossy action - both / and . are mapped to . which makes it difficult to tell the difference between a directory and a javascript filename with multiple .s in it. The startup code, which scans the assemblies for ERs, should take the assembly name into account.

mcintyre321 avatar Sep 13 '18 08:09 mcintyre321