I have the following solution structure:

Portal.DataAccess -> Class library project with methods against database...

Portal.DomainEntities -> Class library project (Where i have my storage classes)

Portal.Business -> class library (proxy between front end and data access)

Portal.Web -> class library with references to web context (system.web.mvc, etc...)

Portal.Web.Website1 -> My website 1

Portal.Web.Website2 -> My website 2 

....

Portal.Web.WebsiteN -> My website N 

All my websites uses the same queries, and i would like to create a file with the following structure:

```
<?xml version="1.0" encoding="utf-8" ?>
<Queries>
      <Query>
        <Name>DetailArticle</Name>
        <Value>
          <![CDATA[
             select * from Articles where ID={ID}
          ]]>
        </Value>
 ..... All my queries here
</Queries>

```

Where do you think is the best place to put this xml file that will be deserialized for use? I think that could be good to have it into Portal.DataAccess as an embedded resource but my issue is that i dont want to access to disk everytime i want to do a query. In addition, this project doesnt contains references to WebContext (so i cannot put this in cache). For this reason i was thinking to put this file on Portal.Web which is a project with common funcionality for all websites.

What's your recomendation? Is there any other place (apart from web cache) to put the deserialized class of the xml?