473,573 Members | 4,459 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

asp.net assembly best practices question...

Hello,

I am trying to use vs.net 2005 to migrate a project originally in vs.net
2003. I started with creation of a "web site", and then created folders for
each component of the site.

I read somewhere that each folder under the "web site" is compiled in
separate assembly. I however, did not find that the "web site" creation in
vs.net 2005 created any AssemblyInfo.cs file.

If I include such a file manually, will I be able to control the assembly
version in this way? if not, what is the correct way of doing this.

I have however noticed that any other type of projects (like C# library)
indeed creates a property folder and the AssemblyInfo.cs in it.

Thanks

--
-jojobar
Nov 19 '05 #1
10 3428
Hi Jojobar,

Welcome to ASP.NET newsgroup.
Regarding on the problem of the assembly compilation in ASP.NET 2.0 , yes,
it does be much different from the 1.x's style. First, regardless of the
VS.NET 2005 IDE, the asp.net 2.0 use the new dynamic compilation model. In
this model, each aspx page's codebehind file and other source code
(component class, xsd.... ) put in the App_Code code will be automatically
compiled at runtime. And the assemblies are in the asp.net temporary dir.
That's why we no longer see a precompiled dll in the "bin" sub dir(all
those page classes and other components are dynamic compiled). Thus, we do
not have the assemblyInfo code file for specifying asembly attrributes for
those dynamic compiled ones. In addition, the assembly reference info are
put into web.config file. So there is event no project file needed for
ASP.NET project in VS.NET 2005. This is a good feature which come from many
feedbacks in the former version.
In addition, if you need to specify assembly info for some components
class, we can consider separate them out of the web project and put in an
external class library project and reference it in web application/project.
Thanks,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)


--------------------
| Thread-Topic: asp.net assembly best practices question...
| thread-index: AcXZ2wkYrEyRUnm kTaab75t1X9ftuQ ==
| X-WBNR-Posting-Host: 24.30.72.206
| From: "=?Utf-8?B?am9qb2Jhcg= =?=" <jo*****@nospam .nospam>
| Subject: asp.net assembly best practices question...
| Date: Tue, 25 Oct 2005 20:12:02 -0700
| Lines: 20
| Message-ID: <97************ *************** *******@microso ft.com>
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="Utf-8"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| Content-Class: urn:content-classes:message
| Importance: normal
| Priority: normal
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| Newsgroups: microsoft.publi c.dotnet.framew ork.aspnet
| NNTP-Posting-Host: TK2MSFTNGXA03.p hx.gbl 10.40.2.250
| Path: TK2MSFTNGXA01.p hx.gbl!TK2MSFTN GXA03.phx.gbl
| Xref: TK2MSFTNGXA01.p hx.gbl
microsoft.publi c.dotnet.framew ork.aspnet:1338 43
| X-Tomcat-NG: microsoft.publi c.dotnet.framew ork.aspnet
|
| Hello,
|
| I am trying to use vs.net 2005 to migrate a project originally in vs.net
| 2003. I started with creation of a "web site", and then created folders
for
| each component of the site.
|
| I read somewhere that each folder under the "web site" is compiled in
| separate assembly. I however, did not find that the "web site" creation
in
| vs.net 2005 created any AssemblyInfo.cs file.
|
| If I include such a file manually, will I be able to control the assembly
| version in this way? if not, what is the correct way of doing this.
|
| I have however noticed that any other type of projects (like C# library)
| indeed creates a property folder and the AssemblyInfo.cs in it.
|
| Thanks
|
| --
| -jojobar
|

Nov 19 '05 #2
Thanks for the reply, I have a specific question:

So far we worked in asp 1.1 and it had let me control the assembly version
using the assemblyinfo file. This helps me to version our software correctly
and keep track of the assembly in all our versions.

With 2.0 I am trying to see if I can make that jump to new ways of doing
things. Our application has many components like calendar, document
management, tasks etc. With 1.1 each of these were different C# projects and
a dll was created for each of them and we could version it correctly. After
reading Scott Guthrie blogs, I figured that it will be great to have one web
project and have these components as separate directories.

These are the problems I am having:

1. If I cannot have assembly info, how can I version the assemblies? I
checked up in the .net temp directory where the assemblies are created and it
shows the version as 0.0.0.0. Is there any way we can version these
assemblies so that we can keep track of things when they go to the client
site?

2. I also plan to use assemblyinfo to define things so that I can embed
javascript files in the assembly (using webresource.axd ). I figured out how
to do this in assemblyinfo but do not know how to do it otherwise.

3. Also, putting things in APP_Code is difficult for me. I do understand
what it does, but our current projects also has a lot of C# helper files (in
addition to aspx.cs and ascx.cs files), I understand they will need explicit
compilation if I do not put them in the APP_code and keep them in their
respective directories. Will compiling the web site compile these files
automatically (if they are not in APP_Code directory but in normal folders)?

I would like to follow the best practices in our project but am struggling
how we can avoid drastic changes in our code base (over 3000 program files)
while doing this.

Kind Regards

--
-jojobar
"Steven Cheng[MSFT]" wrote:
Hi Jojobar,

Welcome to ASP.NET newsgroup.
Regarding on the problem of the assembly compilation in ASP.NET 2.0 , yes,
it does be much different from the 1.x's style. First, regardless of the
VS.NET 2005 IDE, the asp.net 2.0 use the new dynamic compilation model. In
this model, each aspx page's codebehind file and other source code
(component class, xsd.... ) put in the App_Code code will be automatically
compiled at runtime. And the assemblies are in the asp.net temporary dir.
That's why we no longer see a precompiled dll in the "bin" sub dir(all
those page classes and other components are dynamic compiled). Thus, we do
not have the assemblyInfo code file for specifying asembly attrributes for
those dynamic compiled ones. In addition, the assembly reference info are
put into web.config file. So there is event no project file needed for
ASP.NET project in VS.NET 2005. This is a good feature which come from many
feedbacks in the former version.
In addition, if you need to specify assembly info for some components
class, we can consider separate them out of the web project and put in an
external class library project and reference it in web application/project.
Thanks,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)


--------------------
| Thread-Topic: asp.net assembly best practices question...
| thread-index: AcXZ2wkYrEyRUnm kTaab75t1X9ftuQ ==
| X-WBNR-Posting-Host: 24.30.72.206
| From: "=?Utf-8?B?am9qb2Jhcg= =?=" <jo*****@nospam .nospam>
| Subject: asp.net assembly best practices question...
| Date: Tue, 25 Oct 2005 20:12:02 -0700
| Lines: 20
| Message-ID: <97************ *************** *******@microso ft.com>
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="Utf-8"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| Content-Class: urn:content-classes:message
| Importance: normal
| Priority: normal
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| Newsgroups: microsoft.publi c.dotnet.framew ork.aspnet
| NNTP-Posting-Host: TK2MSFTNGXA03.p hx.gbl 10.40.2.250
| Path: TK2MSFTNGXA01.p hx.gbl!TK2MSFTN GXA03.phx.gbl
| Xref: TK2MSFTNGXA01.p hx.gbl
microsoft.publi c.dotnet.framew ork.aspnet:1338 43
| X-Tomcat-NG: microsoft.publi c.dotnet.framew ork.aspnet
|
| Hello,
|
| I am trying to use vs.net 2005 to migrate a project originally in vs.net
| 2003. I started with creation of a "web site", and then created folders
for
| each component of the site.
|
| I read somewhere that each folder under the "web site" is compiled in
| separate assembly. I however, did not find that the "web site" creation
in
| vs.net 2005 created any AssemblyInfo.cs file.
|
| If I include such a file manually, will I be able to control the assembly
| version in this way? if not, what is the correct way of doing this.
|
| I have however noticed that any other type of projects (like C# library)
| indeed creates a property folder and the AssemblyInfo.cs in it.
|
| Thanks
|
| --
| -jojobar
|

Nov 19 '05 #3
On Wed, 26 Oct 2005 06:51:04 -0700, "jojobar" <jo*****@nospam .nospam>
wrote:

1. If I cannot have assembly info, how can I version the assemblies? I
checked up in the .net temp directory where the assemblies are created and it
shows the version as 0.0.0.0. Is there any way we can version these
assemblies so that we can keep track of things when they go to the client
site?

I believe we will have to wait until RTM when the ASP.NET team
provides us with a build and deployment project. One feature of the
tool is supposed to be a post compilation step that will merge all
generated assemblies into a single assembly - I'm thinking this will
be easy to stamp with a version.

3. Also, putting things in APP_Code is difficult for me. I do understand
what it does, but our current projects also has a lot of C# helper files (in
addition to aspx.cs and ascx.cs files), I understand they will need explicit
compilation if I do not put them in the APP_code and keep them in their
respective directories. Will compiling the web site compile these files
automaticall y (if they are not in APP_Code directory but in normal folders)?

You have to have stand alone code files in App_Code for the runtime to
compile and properly reference them from the web assemblies. Just drop
the .cs / .vb files in App_Code, or a subdirectory of App_Code, and
the runtime does the rest. If you want to logically organize the
files, you can place them in subdirs of App_Code, or into seperate
class libraries.

Make sense?

--
Scott
http://www.OdeToCode.com/blogs/scott/
Nov 19 '05 #4
Hello Scott,

Thanks for replying. I read in scottgu's blog that MS is trying to combine
the assemblies in folders in a website. That will be great!

From your reply I gather that if I have xxx.aspx, xxx.aspx.cs and support.cs
(where support.cs only has support functions for the xxx.aspx.cs) in a folder
and compile the web site, it will not compile it correctly. However, if I
copy support.cs in APP_Code it will!

I have not tested it yet, but my understanding was that putting in APP_Code
will compile it automatically, but you still have an option to compile it
yourself elsewhere (in the web site) if you want to. Putting things in
APP_Code is not a big deal, but I am trying to find if this is forced or an
option.

Also, I was wondering how to put the .js files into assembly (using .axd) in
a web site, if there is no way to define attributes for the assembly (usually
you define this in the assemblyinfo.cs file).

Thanks
--
-jojobar
"Scott Allen" wrote:
On Wed, 26 Oct 2005 06:51:04 -0700, "jojobar" <jo*****@nospam .nospam>
wrote:

1. If I cannot have assembly info, how can I version the assemblies? I
checked up in the .net temp directory where the assemblies are created and it
shows the version as 0.0.0.0. Is there any way we can version these
assemblies so that we can keep track of things when they go to the client
site?


I believe we will have to wait until RTM when the ASP.NET team
provides us with a build and deployment project. One feature of the
tool is supposed to be a post compilation step that will merge all
generated assemblies into a single assembly - I'm thinking this will
be easy to stamp with a version.

3. Also, putting things in APP_Code is difficult for me. I do understand
what it does, but our current projects also has a lot of C# helper files (in
addition to aspx.cs and ascx.cs files), I understand they will need explicit
compilation if I do not put them in the APP_code and keep them in their
respective directories. Will compiling the web site compile these files
automaticall y (if they are not in APP_Code directory but in normal folders)?

You have to have stand alone code files in App_Code for the runtime to
compile and properly reference them from the web assemblies. Just drop
the .cs / .vb files in App_Code, or a subdirectory of App_Code, and
the runtime does the rest. If you want to logically organize the
files, you can place them in subdirs of App_Code, or into seperate
class libraries.

Make sense?

--
Scott
http://www.OdeToCode.com/blogs/scott/

Nov 19 '05 #5
Okay I found another thing which looks interesting.

If I put an assembly info file in APP_Code folder, then an assembly is
created in the .net temporary folder called App_Code.rnuvm4 pf.dll, which
picked up the assembly version correctly. However, if it is kept outside the
App_code, the code compiles and runs fine but the assemblyinfo is not picked
up correctly in the dll (it always shows 0.0.0.0).

Thanks
--
-jojobar
"jojobar" wrote:
Hello Scott,

Thanks for replying. I read in scottgu's blog that MS is trying to combine
the assemblies in folders in a website. That will be great!

From your reply I gather that if I have xxx.aspx, xxx.aspx.cs and support.cs
(where support.cs only has support functions for the xxx.aspx.cs) in a folder
and compile the web site, it will not compile it correctly. However, if I
copy support.cs in APP_Code it will!

I have not tested it yet, but my understanding was that putting in APP_Code
will compile it automatically, but you still have an option to compile it
yourself elsewhere (in the web site) if you want to. Putting things in
APP_Code is not a big deal, but I am trying to find if this is forced or an
option.

Also, I was wondering how to put the .js files into assembly (using .axd) in
a web site, if there is no way to define attributes for the assembly (usually
you define this in the assemblyinfo.cs file).

Thanks
--
-jojobar
"Scott Allen" wrote:
On Wed, 26 Oct 2005 06:51:04 -0700, "jojobar" <jo*****@nospam .nospam>
wrote:

1. If I cannot have assembly info, how can I version the assemblies? I
checked up in the .net temp directory where the assemblies are created and it
shows the version as 0.0.0.0. Is there any way we can version these
assemblies so that we can keep track of things when they go to the client
site?


I believe we will have to wait until RTM when the ASP.NET team
provides us with a build and deployment project. One feature of the
tool is supposed to be a post compilation step that will merge all
generated assemblies into a single assembly - I'm thinking this will
be easy to stamp with a version.

3. Also, putting things in APP_Code is difficult for me. I do understand
what it does, but our current projects also has a lot of C# helper files (in
addition to aspx.cs and ascx.cs files), I understand they will need explicit
compilation if I do not put them in the APP_code and keep them in their
respective directories. Will compiling the web site compile these files
automaticall y (if they are not in APP_Code directory but in normal folders)?

You have to have stand alone code files in App_Code for the runtime to
compile and properly reference them from the web assemblies. Just drop
the .cs / .vb files in App_Code, or a subdirectory of App_Code, and
the runtime does the rest. If you want to logically organize the
files, you can place them in subdirs of App_Code, or into seperate
class libraries.

Make sense?

--
Scott
http://www.OdeToCode.com/blogs/scott/

Nov 19 '05 #6
Thanks for your response Jojobar,

Here are some of my understanding and suggestions regarding on the
questions you mentioned:

1. If I cannot have assembly info, how can I version the assemblies? I
checked up in the .net temp directory where the assemblies are created and
it
shows the version as 0.0.0.0. Is there any way we can version these
assemblies so that we can keep track of things when they go to the client
site?
=============== =============== =========
I'm afraid currently for the dynamic compiled assembly we can not version
them as class library or other precompiled ones.
2. I also plan to use assemblyinfo to define things so that I can embed
javascript files in the assembly (using webresource.axd ). I figured out how
to do this in assemblyinfo but do not know how to do it otherwise.
=============== =============== =========
As for embeded webresource, the ASP.NET 2.0 project dosn't quite support
it, you can find that the image or other resource files in the asp.net
project does not contain the "Build Action" to let dynamic compilation
embeded them. So the [assembly:WebRes ource(...)] dosn't make sense in
asp.net 2.0 web project. Actually, this is not necessary because dynamic
resource emitting is mainly target webcontrol developing, since webcontrol
provider can not deliver physical files to web application developers and
let them put in web dir. However, for asp.net app developing, since we can
diretory manage the website's dir and files, we can just put those static
resoures file in application's sub dirs so as to accessing them directly
(instead of the through the webresource.axd ). static files request will
have much more improved performance than handling by webresource.axd .
3. Also, putting things in APP_Code is difficult for me. I do understand
what it does, but our current projects also has a lot of C# helper files
(in
addition to aspx.cs and ascx.cs files), I understand they will need
explicit
compilation if I do not put them in the APP_code and keep them in their
respective directories. Will compiling the web site compile these files
automatically (if they are not in APP_Code directory but in normal folders)?
=============== =============== =========
For such scenario, I think the best choice should be still separating the
components/controls and helper classes in external class library so as to
explictily version them or apply other assembly level attributes. Also,
compile the website won't compile the code which is not in App_Code or
codebehind files.
4.If I put an assembly info file in APP_Code folder, then an assembly is
created in the .net temporary folder called App_Code.rnuvm4 pf.dll, which
picked up the assembly version correctly. However, if it is kept outside
the
App_code, the code compiles and runs fine but the assemblyinfo is not
picked
up correctly in the dll (it always shows 0.0.0.0).
=============== =============== =========
yes, we can manually put a source code file (not necessarily named as
"AssemblyIn fo") and put [assembly:XXX(.. .)] attributes in it so as to
embeded in the dynamic generated assemblies. However, the dynamic
compilation of the source code in App_Code do not gurantee that the file
which contains those assembly level attributes will be compiled into a
fixed assembly ( e.g. always together with other source files in the
App_Code). In other words, the source code files in the App_code folder
maybe dynamically compiled into multi assemblies, and we can not make sure
which assembly actually contains the assembly version info.

Thanks,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)



--------------------
| Thread-Topic: asp.net assembly best practices question...
| thread-index: AcXaZeTkcv8kMaH PQSyHovYFJeJngA ==
| X-WBNR-Posting-Host: 66.32.181.251
| From: "=?Utf-8?B?am9qb2Jhcg= =?=" <jo*****@nospam .nospam>
| References: <97************ *************** *******@microso ft.com>
<Q#************ **@TK2MSFTNGXA0 1.phx.gbl>
<5F************ *************** *******@microso ft.com>
<ld************ *************** *****@4ax.com>
<ED************ *************** *******@microso ft.com>
| Subject: Re: asp.net assembly best practices question...
| Date: Wed, 26 Oct 2005 12:46:01 -0700
| Lines: 82
| Message-ID: <3B************ *************** *******@microso ft.com>
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="Utf-8"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| Content-Class: urn:content-classes:message
| Importance: normal
| Priority: normal
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| Newsgroups: microsoft.publi c.dotnet.framew ork.aspnet
| NNTP-Posting-Host: TK2MSFTNGXA03.p hx.gbl 10.40.2.250
| Path: TK2MSFTNGXA01.p hx.gbl!TK2MSFTN GXA03.phx.gbl
| Xref: TK2MSFTNGXA01.p hx.gbl
microsoft.publi c.dotnet.framew ork.aspnet:1340 88
| X-Tomcat-NG: microsoft.publi c.dotnet.framew ork.aspnet
|
| Okay I found another thing which looks interesting.
|
| If I put an assembly info file in APP_Code folder, then an assembly is
| created in the .net temporary folder called App_Code.rnuvm4 pf.dll, which
| picked up the assembly version correctly. However, if it is kept outside
the
| App_code, the code compiles and runs fine but the assemblyinfo is not
picked
| up correctly in the dll (it always shows 0.0.0.0).
|
| Thanks
| --
| -jojobar
|
|
| "jojobar" wrote:
|
| > Hello Scott,
| >
| > Thanks for replying. I read in scottgu's blog that MS is trying to
combine
| > the assemblies in folders in a website. That will be great!
| >
| > From your reply I gather that if I have xxx.aspx, xxx.aspx.cs and
support.cs
| > (where support.cs only has support functions for the xxx.aspx.cs) in a
folder
| > and compile the web site, it will not compile it correctly. However, if
I
| > copy support.cs in APP_Code it will!
| >
| > I have not tested it yet, but my understanding was that putting in
APP_Code
| > will compile it automatically, but you still have an option to compile
it
| > yourself elsewhere (in the web site) if you want to. Putting things in
| > APP_Code is not a big deal, but I am trying to find if this is forced
or an
| > option.
| >
| > Also, I was wondering how to put the .js files into assembly (using
..axd) in
| > a web site, if there is no way to define attributes for the assembly
(usually
| > you define this in the assemblyinfo.cs file).
| >
| > Thanks
| > --
| > -jojobar
| >
| >
| > "Scott Allen" wrote:
| >
| > > On Wed, 26 Oct 2005 06:51:04 -0700, "jojobar" <jo*****@nospam .nospam>
| > > wrote:
| > >
| > > >
| > > >1. If I cannot have assembly info, how can I version the assemblies?
I
| > > >checked up in the .net temp directory where the assemblies are
created and it
| > > >shows the version as 0.0.0.0. Is there any way we can version these
| > > >assemblies so that we can keep track of things when they go to the
client
| > > >site?
| > > >
| > >
| > > I believe we will have to wait until RTM when the ASP.NET team
| > > provides us with a build and deployment project. One feature of the
| > > tool is supposed to be a post compilation step that will merge all
| > > generated assemblies into a single assembly - I'm thinking this will
| > > be easy to stamp with a version.
| > >
| > > >
| > > >3. Also, putting things in APP_Code is difficult for me. I do
understand
| > > >what it does, but our current projects also has a lot of C# helper
files (in
| > > >addition to aspx.cs and ascx.cs files), I understand they will need
explicit
| > > >compilation if I do not put them in the APP_code and keep them in
their
| > > >respective directories. Will compiling the web site compile these
files
| > > >automaticall y (if they are not in APP_Code directory but in normal
folders)?
| > > >
| > >
| > >
| > > You have to have stand alone code files in App_Code for the runtime to
| > > compile and properly reference them from the web assemblies. Just drop
| > > the .cs / .vb files in App_Code, or a subdirectory of App_Code, and
| > > the runtime does the rest. If you want to logically organize the
| > > files, you can place them in subdirs of App_Code, or into seperate
| > > class libraries.
| > >
| > > Make sense?
| > >
| > > --
| > > Scott
| > > http://www.OdeToCode.com/blogs/scott/
| > >
|

Nov 19 '05 #7
I thought that another advantage of webresource.axd is it can cache the
javascript file and automatically refresh them in the next build. Keeping js
files in static folder tends to cache them the first time they are used and
the browser keep using the cached file even when the original file is
changed(unless you change the file name ofcourse or clear the cache). I was
trying to cache the js files in another c# project and use the resource in
the web project (using the namespace).

So far no success, maybe I am doing something wrong!
For such scenario, I think the best choice should be still separating the
components/controls and helper classes in external class library so as to
explictily version them or apply other assembly level attributes. Also,
compile the website won't compile the code which is not in App_Code or
codebehind files.
This is a bit of restriction. but we can live with it! :-)

Thanks again
jojobar

--
-jojobar
"Steven Cheng[MSFT]" wrote:
Thanks for your response Jojobar,

Here are some of my understanding and suggestions regarding on the
questions you mentioned:

1. If I cannot have assembly info, how can I version the assemblies? I
checked up in the .net temp directory where the assemblies are created and
it
shows the version as 0.0.0.0. Is there any way we can version these
assemblies so that we can keep track of things when they go to the client
site?
=============== =============== =========
I'm afraid currently for the dynamic compiled assembly we can not version
them as class library or other precompiled ones.
2. I also plan to use assemblyinfo to define things so that I can embed
javascript files in the assembly (using webresource.axd ). I figured out how
to do this in assemblyinfo but do not know how to do it otherwise.
=============== =============== =========
As for embeded webresource, the ASP.NET 2.0 project dosn't quite support
it, you can find that the image or other resource files in the asp.net
project does not contain the "Build Action" to let dynamic compilation
embeded them. So the [assembly:WebRes ource(...)] dosn't make sense in
asp.net 2.0 web project. Actually, this is not necessary because dynamic
resource emitting is mainly target webcontrol developing, since webcontrol
provider can not deliver physical files to web application developers and
let them put in web dir. However, for asp.net app developing, since we can
diretory manage the website's dir and files, we can just put those static
resoures file in application's sub dirs so as to accessing them directly
(instead of the through the webresource.axd ). static files request will
have much more improved performance than handling by webresource.axd .
3. Also, putting things in APP_Code is difficult for me. I do understand
what it does, but our current projects also has a lot of C# helper files
(in
addition to aspx.cs and ascx.cs files), I understand they will need
explicit
compilation if I do not put them in the APP_code and keep them in their
respective directories. Will compiling the web site compile these files
automatically (if they are not in APP_Code directory but in normal folders)?
=============== =============== =========
For such scenario, I think the best choice should be still separating the
components/controls and helper classes in external class library so as to
explictily version them or apply other assembly level attributes. Also,
compile the website won't compile the code which is not in App_Code or
codebehind files.
4.If I put an assembly info file in APP_Code folder, then an assembly is
created in the .net temporary folder called App_Code.rnuvm4 pf.dll, which
picked up the assembly version correctly. However, if it is kept outside
the
App_code, the code compiles and runs fine but the assemblyinfo is not
picked
up correctly in the dll (it always shows 0.0.0.0).
=============== =============== =========
yes, we can manually put a source code file (not necessarily named as
"AssemblyIn fo") and put [assembly:XXX(.. .)] attributes in it so as to
embeded in the dynamic generated assemblies. However, the dynamic
compilation of the source code in App_Code do not gurantee that the file
which contains those assembly level attributes will be compiled into a
fixed assembly ( e.g. always together with other source files in the
App_Code). In other words, the source code files in the App_code folder
maybe dynamically compiled into multi assemblies, and we can not make sure
which assembly actually contains the assembly version info.

Thanks,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)



--------------------
| Thread-Topic: asp.net assembly best practices question...
| thread-index: AcXaZeTkcv8kMaH PQSyHovYFJeJngA ==
| X-WBNR-Posting-Host: 66.32.181.251
| From: "=?Utf-8?B?am9qb2Jhcg= =?=" <jo*****@nospam .nospam>
| References: <97************ *************** *******@microso ft.com>
<Q#************ **@TK2MSFTNGXA0 1.phx.gbl>
<5F************ *************** *******@microso ft.com>
<ld************ *************** *****@4ax.com>
<ED************ *************** *******@microso ft.com>
| Subject: Re: asp.net assembly best practices question...
| Date: Wed, 26 Oct 2005 12:46:01 -0700
| Lines: 82
| Message-ID: <3B************ *************** *******@microso ft.com>
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="Utf-8"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| Content-Class: urn:content-classes:message
| Importance: normal
| Priority: normal
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| Newsgroups: microsoft.publi c.dotnet.framew ork.aspnet
| NNTP-Posting-Host: TK2MSFTNGXA03.p hx.gbl 10.40.2.250
| Path: TK2MSFTNGXA01.p hx.gbl!TK2MSFTN GXA03.phx.gbl
| Xref: TK2MSFTNGXA01.p hx.gbl
microsoft.publi c.dotnet.framew ork.aspnet:1340 88
| X-Tomcat-NG: microsoft.publi c.dotnet.framew ork.aspnet
|
| Okay I found another thing which looks interesting.
|
| If I put an assembly info file in APP_Code folder, then an assembly is
| created in the .net temporary folder called App_Code.rnuvm4 pf.dll, which
| picked up the assembly version correctly. However, if it is kept outside
the
| App_code, the code compiles and runs fine but the assemblyinfo is not
picked
| up correctly in the dll (it always shows 0.0.0.0).
|
| Thanks
| --
| -jojobar
|
|
| "jojobar" wrote:
|
| > Hello Scott,
| >
| > Thanks for replying. I read in scottgu's blog that MS is trying to
combine
| > the assemblies in folders in a website. That will be great!
| >
| > From your reply I gather that if I have xxx.aspx, xxx.aspx.cs and
support.cs
| > (where support.cs only has support functions for the xxx.aspx.cs) in a
folder
| > and compile the web site, it will not compile it correctly. However, if
I
| > copy support.cs in APP_Code it will!
| >
| > I have not tested it yet, but my understanding was that putting in
APP_Code
| > will compile it automatically, but you still have an option to compile
it
| > yourself elsewhere (in the web site) if you want to. Putting things in
| > APP_Code is not a big deal, but I am trying to find if this is forced
or an
| > option.
| >
| > Also, I was wondering how to put the .js files into assembly (using
.axd) in
| > a web site, if there is no way to define attributes for the assembly
(usually
| > you define this in the assemblyinfo.cs file).
| >
| > Thanks
| > --
| > -jojobar
| >
| >
| > "Scott Allen" wrote:
| >
| > > On Wed, 26 Oct 2005 06:51:04 -0700, "jojobar" <jo*****@nospam .nospam>
| > > wrote:
| > >
| > > >
| > > >1. If I cannot have assembly info, how can I version the assemblies?
I
| > > >checked up in the .net temp directory where the assemblies are
created and it
| > > >shows the version as 0.0.0.0. Is there any way we can version these
| > > >assemblies so that we can keep track of things when they go to the
client
| > > >site?
| > > >
| > >
| > > I believe we will have to wait until RTM when the ASP.NET team
| > > provides us with a build and deployment project. One feature of the
| > > tool is supposed to be a post compilation step that will merge all
| > > generated assemblies into a single assembly - I'm thinking this will
| > > be easy to stamp with a version.
| > >
| > > >
| > > >3. Also, putting things in APP_Code is difficult for me. I do
understand
| > > >what it does, but our current projects also has a lot of C# helper
files (in
| > > >addition to aspx.cs and ascx.cs files), I understand they will need
explicit
| > > >compilation if I do not put them in the APP_code and keep them in
their
| > > >respective directories. Will compiling the web site compile these
files
| > > >automaticall y (if they are not in APP_Code directory but in normal
folders)?
| > > >
| > >
| > >
| > > You have to have stand alone code files in App_Code for the runtime to
| > > compile and properly reference them from the web assemblies. Just drop
| > > the .cs / .vb files in App_Code, or a subdirectory of App_Code, and
| > > the runtime does the rest. If you want to logically organize the
| > > files, you can place them in subdirs of App_Code, or into seperate
| > > class libraries.
| > >
| > > Make sense?
| > >
| > > --
| > > Scott
| > > http://www.OdeToCode.com/blogs/scott/
| > >
|

Nov 19 '05 #8
Thanks for your response Jojobar,

I've also consult Scott Guthrie regarding on the questions and here are
some of his comments:

=============== ====
We are coming out with a new deployment project on November 7th (the same
day as VS 2005 launch) that should help this customer automate building
user control assemblies. It is called the "VS 2005 Web Deployment Project"
and can be added to their solution containing the web project. It provides
several build customization options. One option it supports is to set a
version string explicitly. By default, if a version string isn't set in
the tool it will be picked up by any AssemblyInfo.cs file stored in the
app_code directory of their web project.
=============== ====

However, for components and other helper classes, I still recommend you
keep them in separate class lib projects since that'll make redistribute
and versioning controls/components only more convenient.

Thanks,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

--------------------
| Thread-Topic: asp.net assembly best practices question...
| thread-index: AcXa+SnlZT4gjv8 9RRK/q10X52ZJWA==
| X-WBNR-Posting-Host: 66.32.181.251
| From: "=?Utf-8?B?am9qb2Jhcg= =?=" <jo*****@nospam .nospam>
| References: <97************ *************** *******@microso ft.com>
<Q#************ **@TK2MSFTNGXA0 1.phx.gbl>
<5F************ *************** *******@microso ft.com>
<ld************ *************** *****@4ax.com>
<ED************ *************** *******@microso ft.com>
<3B************ *************** *******@microso ft.com>
<7A************ **@TK2MSFTNGXA0 1.phx.gbl>
| Subject: Re: asp.net assembly best practices question...
| Date: Thu, 27 Oct 2005 06:20:13 -0700
| Lines: 247
| Message-ID: <07************ *************** *******@microso ft.com>
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="Utf-8"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| Content-Class: urn:content-classes:message
| Importance: normal
| Priority: normal
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| Newsgroups: microsoft.publi c.dotnet.framew ork.aspnet
| NNTP-Posting-Host: TK2MSFTNGXA03.p hx.gbl 10.40.2.250
| Path: TK2MSFTNGXA01.p hx.gbl!TK2MSFTN GXA03.phx.gbl
| Xref: TK2MSFTNGXA01.p hx.gbl
microsoft.publi c.dotnet.framew ork.aspnet:1342 27
| X-Tomcat-NG: microsoft.publi c.dotnet.framew ork.aspnet
|
| I thought that another advantage of webresource.axd is it can cache the
| javascript file and automatically refresh them in the next build. Keeping
js
| files in static folder tends to cache them the first time they are used
and
| the browser keep using the cached file even when the original file is
| changed(unless you change the file name ofcourse or clear the cache). I
was
| trying to cache the js files in another c# project and use the resource
in
| the web project (using the namespace).
|
| So far no success, maybe I am doing something wrong!
|
| >For such scenario, I think the best choice should be still separating
the
| >components/controls and helper classes in external class library so as
to
| >explictily version them or apply other assembly level attributes. Also,
| >compile the website won't compile the code which is not in App_Code or
| >codebehind files.
|
| This is a bit of restriction. but we can live with it! :-)
|
| Thanks again
| jojobar
|
| --
| -jojobar
|
|
| "Steven Cheng[MSFT]" wrote:
|
| > Thanks for your response Jojobar,
| >
| > Here are some of my understanding and suggestions regarding on the
| > questions you mentioned:
| >
| > 1. If I cannot have assembly info, how can I version the assemblies? I
| > checked up in the .net temp directory where the assemblies are created
and
| > it
| > shows the version as 0.0.0.0. Is there any way we can version these
| > assemblies so that we can keep track of things when they go to the
client
| > site?
| > =============== =============== =========
| > I'm afraid currently for the dynamic compiled assembly we can not
version
| > them as class library or other precompiled ones.
| >
| >
| > 2. I also plan to use assemblyinfo to define things so that I can embed
| > javascript files in the assembly (using webresource.axd ). I figured out
how
| > to do this in assemblyinfo but do not know how to do it otherwise.
| > =============== =============== =========
| > As for embeded webresource, the ASP.NET 2.0 project dosn't quite
support
| > it, you can find that the image or other resource files in the asp.net
| > project does not contain the "Build Action" to let dynamic compilation
| > embeded them. So the [assembly:WebRes ource(...)] dosn't make sense in
| > asp.net 2.0 web project. Actually, this is not necessary because
dynamic
| > resource emitting is mainly target webcontrol developing, since
webcontrol
| > provider can not deliver physical files to web application developers
and
| > let them put in web dir. However, for asp.net app developing, since we
can
| > diretory manage the website's dir and files, we can just put those
static
| > resoures file in application's sub dirs so as to accessing them
directly
| > (instead of the through the webresource.axd ). static files request will
| > have much more improved performance than handling by webresource.axd .
| >
| >
| > 3. Also, putting things in APP_Code is difficult for me. I do
understand
| > what it does, but our current projects also has a lot of C# helper
files
| > (in
| > addition to aspx.cs and ascx.cs files), I understand they will need
| > explicit
| > compilation if I do not put them in the APP_code and keep them in their
| > respective directories. Will compiling the web site compile these files
| > automatically (if they are not in APP_Code directory but in normal
folders)?
| > =============== =============== =========
| > For such scenario, I think the best choice should be still separating
the
| > components/controls and helper classes in external class library so as
to
| > explictily version them or apply other assembly level attributes.
Also,
| > compile the website won't compile the code which is not in App_Code or
| > codebehind files.
| >
| >
| > 4.If I put an assembly info file in APP_Code folder, then an assembly
is
| > created in the .net temporary folder called App_Code.rnuvm4 pf.dll,
which
| > picked up the assembly version correctly. However, if it is kept
outside
| > the
| > App_code, the code compiles and runs fine but the assemblyinfo is not
| > picked
| > up correctly in the dll (it always shows 0.0.0.0).
| > =============== =============== =========
| > yes, we can manually put a source code file (not necessarily named as
| > "AssemblyIn fo") and put [assembly:XXX(.. .)] attributes in it so as to
| > embeded in the dynamic generated assemblies. However, the dynamic
| > compilation of the source code in App_Code do not gurantee that the
file
| > which contains those assembly level attributes will be compiled into a
| > fixed assembly ( e.g. always together with other source files in the
| > App_Code). In other words, the source code files in the App_code
folder
| > maybe dynamically compiled into multi assemblies, and we can not make
sure
| > which assembly actually contains the assembly version info.
| >
| > Thanks,
| >
| > Steven Cheng
| > Microsoft Online Support
| >
| > Get Secure! www.microsoft.com/security
| > (This posting is provided "AS IS", with no warranties, and confers no
| > rights.)
| >
| >
| >
| >
| >
| >
| >
| >
| >
| > --------------------
| > | Thread-Topic: asp.net assembly best practices question...
| > | thread-index: AcXaZeTkcv8kMaH PQSyHovYFJeJngA ==
| > | X-WBNR-Posting-Host: 66.32.181.251
| > | From: "=?Utf-8?B?am9qb2Jhcg= =?=" <jo*****@nospam .nospam>
| > | References: <97************ *************** *******@microso ft.com>
| > <Q#************ **@TK2MSFTNGXA0 1.phx.gbl>
| > <5F************ *************** *******@microso ft.com>
| > <ld************ *************** *****@4ax.com>
| > <ED************ *************** *******@microso ft.com>
| > | Subject: Re: asp.net assembly best practices question...
| > | Date: Wed, 26 Oct 2005 12:46:01 -0700
| > | Lines: 82
| > | Message-ID: <3B************ *************** *******@microso ft.com>
| > | MIME-Version: 1.0
| > | Content-Type: text/plain;
| > | charset="Utf-8"
| > | Content-Transfer-Encoding: 7bit
| > | X-Newsreader: Microsoft CDO for Windows 2000
| > | Content-Class: urn:content-classes:message
| > | Importance: normal
| > | Priority: normal
| > | X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| > | Newsgroups: microsoft.publi c.dotnet.framew ork.aspnet
| > | NNTP-Posting-Host: TK2MSFTNGXA03.p hx.gbl 10.40.2.250
| > | Path: TK2MSFTNGXA01.p hx.gbl!TK2MSFTN GXA03.phx.gbl
| > | Xref: TK2MSFTNGXA01.p hx.gbl
| > microsoft.publi c.dotnet.framew ork.aspnet:1340 88
| > | X-Tomcat-NG: microsoft.publi c.dotnet.framew ork.aspnet
| > |
| > | Okay I found another thing which looks interesting.
| > |
| > | If I put an assembly info file in APP_Code folder, then an assembly
is
| > | created in the .net temporary folder called App_Code.rnuvm4 pf.dll,
which
| > | picked up the assembly version correctly. However, if it is kept
outside
| > the
| > | App_code, the code compiles and runs fine but the assemblyinfo is not
| > picked
| > | up correctly in the dll (it always shows 0.0.0.0).
| > |
| > | Thanks
| > | --
| > | -jojobar
| > |
| > |
| > | "jojobar" wrote:
| > |
| > | > Hello Scott,
| > | >
| > | > Thanks for replying. I read in scottgu's blog that MS is trying to
| > combine
| > | > the assemblies in folders in a website. That will be great!
| > | >
| > | > From your reply I gather that if I have xxx.aspx, xxx.aspx.cs and
| > support.cs
| > | > (where support.cs only has support functions for the xxx.aspx.cs)
in a
| > folder
| > | > and compile the web site, it will not compile it correctly.
However, if
| > I
| > | > copy support.cs in APP_Code it will!
| > | >
| > | > I have not tested it yet, but my understanding was that putting in
| > APP_Code
| > | > will compile it automatically, but you still have an option to
compile
| > it
| > | > yourself elsewhere (in the web site) if you want to. Putting things
in
| > | > APP_Code is not a big deal, but I am trying to find if this is
forced
| > or an
| > | > option.
| > | >
| > | > Also, I was wondering how to put the .js files into assembly (using
| > .axd) in
| > | > a web site, if there is no way to define attributes for the
assembly
| > (usually
| > | > you define this in the assemblyinfo.cs file).
| > | >
| > | > Thanks
| > | > --
| > | > -jojobar
| > | >
| > | >
| > | > "Scott Allen" wrote:
| > | >
| > | > > On Wed, 26 Oct 2005 06:51:04 -0700, "jojobar"
<jo*****@nospam .nospam>
| > | > > wrote:
| > | > >
| > | > > >
| > | > > >1. If I cannot have assembly info, how can I version the
assemblies?
| > I
| > | > > >checked up in the .net temp directory where the assemblies are
| > created and it
| > | > > >shows the version as 0.0.0.0. Is there any way we can version
these
| > | > > >assemblies so that we can keep track of things when they go to
the
| > client
| > | > > >site?
| > | > > >
| > | > >
| > | > > I believe we will have to wait until RTM when the ASP.NET team
| > | > > provides us with a build and deployment project. One feature of
the
| > | > > tool is supposed to be a post compilation step that will merge all
| > | > > generated assemblies into a single assembly - I'm thinking this
will
| > | > > be easy to stamp with a version.
| > | > >
| > | > > >
| > | > > >3. Also, putting things in APP_Code is difficult for me. I do
| > understand
| > | > > >what it does, but our current projects also has a lot of C#
helper
| > files (in
| > | > > >addition to aspx.cs and ascx.cs files), I understand they will
need
| > explicit
| > | > > >compilation if I do not put them in the APP_code and keep them
in
| > their
| > | > > >respective directories. Will compiling the web site compile
these
| > files
| > | > > >automaticall y (if they are not in APP_Code directory but in
normal
| > folders)?
| > | > > >
| > | > >
| > | > >
| > | > > You have to have stand alone code files in App_Code for the
runtime to
| > | > > compile and properly reference them from the web assemblies. Just
drop
| > | > > the .cs / .vb files in App_Code, or a subdirectory of App_Code,
and
| > | > > the runtime does the rest. If you want to logically organize the
| > | > > files, you can place them in subdirs of App_Code, or into seperate
| > | > > class libraries.
| > | > >
| > | > > Make sense?
| > | > >
| > | > > --
| > | > > Scott
| > | > > http://www.OdeToCode.com/blogs/scott/
| > | > >
| > |
| >
| >
|

Nov 19 '05 #9
Thanks again for your response. I will try this project type when we get the
new release.
--
-jojobar
"Steven Cheng[MSFT]" wrote:
Thanks for your response Jojobar,

I've also consult Scott Guthrie regarding on the questions and here are
some of his comments:

=============== ====
We are coming out with a new deployment project on November 7th (the same
day as VS 2005 launch) that should help this customer automate building
user control assemblies. It is called the "VS 2005 Web Deployment Project"
and can be added to their solution containing the web project. It provides
several build customization options. One option it supports is to set a
version string explicitly. By default, if a version string isn't set in
the tool it will be picked up by any AssemblyInfo.cs file stored in the
app_code directory of their web project.
=============== ====

However, for components and other helper classes, I still recommend you
keep them in separate class lib projects since that'll make redistribute
and versioning controls/components only more convenient.

Thanks,

Steven Cheng
Microsoft Online Support

Get Secure! www.microsoft.com/security
(This posting is provided "AS IS", with no warranties, and confers no
rights.)

--------------------
| Thread-Topic: asp.net assembly best practices question...
| thread-index: AcXa+SnlZT4gjv8 9RRK/q10X52ZJWA==
| X-WBNR-Posting-Host: 66.32.181.251
| From: "=?Utf-8?B?am9qb2Jhcg= =?=" <jo*****@nospam .nospam>
| References: <97************ *************** *******@microso ft.com>
<Q#************ **@TK2MSFTNGXA0 1.phx.gbl>
<5F************ *************** *******@microso ft.com>
<ld************ *************** *****@4ax.com>
<ED************ *************** *******@microso ft.com>
<3B************ *************** *******@microso ft.com>
<7A************ **@TK2MSFTNGXA0 1.phx.gbl>
| Subject: Re: asp.net assembly best practices question...
| Date: Thu, 27 Oct 2005 06:20:13 -0700
| Lines: 247
| Message-ID: <07************ *************** *******@microso ft.com>
| MIME-Version: 1.0
| Content-Type: text/plain;
| charset="Utf-8"
| Content-Transfer-Encoding: 7bit
| X-Newsreader: Microsoft CDO for Windows 2000
| Content-Class: urn:content-classes:message
| Importance: normal
| Priority: normal
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| Newsgroups: microsoft.publi c.dotnet.framew ork.aspnet
| NNTP-Posting-Host: TK2MSFTNGXA03.p hx.gbl 10.40.2.250
| Path: TK2MSFTNGXA01.p hx.gbl!TK2MSFTN GXA03.phx.gbl
| Xref: TK2MSFTNGXA01.p hx.gbl
microsoft.publi c.dotnet.framew ork.aspnet:1342 27
| X-Tomcat-NG: microsoft.publi c.dotnet.framew ork.aspnet
|
| I thought that another advantage of webresource.axd is it can cache the
| javascript file and automatically refresh them in the next build. Keeping
js
| files in static folder tends to cache them the first time they are used
and
| the browser keep using the cached file even when the original file is
| changed(unless you change the file name ofcourse or clear the cache). I
was
| trying to cache the js files in another c# project and use the resource
in
| the web project (using the namespace).
|
| So far no success, maybe I am doing something wrong!
|
| >For such scenario, I think the best choice should be still separating
the
| >components/controls and helper classes in external class library so as
to
| >explictily version them or apply other assembly level attributes. Also,
| >compile the website won't compile the code which is not in App_Code or
| >codebehind files.
|
| This is a bit of restriction. but we can live with it! :-)
|
| Thanks again
| jojobar
|
| --
| -jojobar
|
|
| "Steven Cheng[MSFT]" wrote:
|
| > Thanks for your response Jojobar,
| >
| > Here are some of my understanding and suggestions regarding on the
| > questions you mentioned:
| >
| > 1. If I cannot have assembly info, how can I version the assemblies? I
| > checked up in the .net temp directory where the assemblies are created
and
| > it
| > shows the version as 0.0.0.0. Is there any way we can version these
| > assemblies so that we can keep track of things when they go to the
client
| > site?
| > =============== =============== =========
| > I'm afraid currently for the dynamic compiled assembly we can not
version
| > them as class library or other precompiled ones.
| >
| >
| > 2. I also plan to use assemblyinfo to define things so that I can embed
| > javascript files in the assembly (using webresource.axd ). I figured out
how
| > to do this in assemblyinfo but do not know how to do it otherwise.
| > =============== =============== =========
| > As for embeded webresource, the ASP.NET 2.0 project dosn't quite
support
| > it, you can find that the image or other resource files in the asp.net
| > project does not contain the "Build Action" to let dynamic compilation
| > embeded them. So the [assembly:WebRes ource(...)] dosn't make sense in
| > asp.net 2.0 web project. Actually, this is not necessary because
dynamic
| > resource emitting is mainly target webcontrol developing, since
webcontrol
| > provider can not deliver physical files to web application developers
and
| > let them put in web dir. However, for asp.net app developing, since we
can
| > diretory manage the website's dir and files, we can just put those
static
| > resoures file in application's sub dirs so as to accessing them
directly
| > (instead of the through the webresource.axd ). static files request will
| > have much more improved performance than handling by webresource.axd .
| >
| >
| > 3. Also, putting things in APP_Code is difficult for me. I do
understand
| > what it does, but our current projects also has a lot of C# helper
files
| > (in
| > addition to aspx.cs and ascx.cs files), I understand they will need
| > explicit
| > compilation if I do not put them in the APP_code and keep them in their
| > respective directories. Will compiling the web site compile these files
| > automatically (if they are not in APP_Code directory but in normal
folders)?
| > =============== =============== =========
| > For such scenario, I think the best choice should be still separating
the
| > components/controls and helper classes in external class library so as
to
| > explictily version them or apply other assembly level attributes.
Also,
| > compile the website won't compile the code which is not in App_Code or
| > codebehind files.
| >
| >
| > 4.If I put an assembly info file in APP_Code folder, then an assembly
is
| > created in the .net temporary folder called App_Code.rnuvm4 pf.dll,
which
| > picked up the assembly version correctly. However, if it is kept
outside
| > the
| > App_code, the code compiles and runs fine but the assemblyinfo is not
| > picked
| > up correctly in the dll (it always shows 0.0.0.0).
| > =============== =============== =========
| > yes, we can manually put a source code file (not necessarily named as
| > "AssemblyIn fo") and put [assembly:XXX(.. .)] attributes in it so as to
| > embeded in the dynamic generated assemblies. However, the dynamic
| > compilation of the source code in App_Code do not gurantee that the
file
| > which contains those assembly level attributes will be compiled into a
| > fixed assembly ( e.g. always together with other source files in the
| > App_Code). In other words, the source code files in the App_code
folder
| > maybe dynamically compiled into multi assemblies, and we can not make
sure
| > which assembly actually contains the assembly version info.
| >
| > Thanks,
| >
| > Steven Cheng
| > Microsoft Online Support
| >
| > Get Secure! www.microsoft.com/security
| > (This posting is provided "AS IS", with no warranties, and confers no
| > rights.)
| >
| >
| >
| >
| >
| >
| >
| >
| >
| > --------------------
| > | Thread-Topic: asp.net assembly best practices question...
| > | thread-index: AcXaZeTkcv8kMaH PQSyHovYFJeJngA ==
| > | X-WBNR-Posting-Host: 66.32.181.251
| > | From: "=?Utf-8?B?am9qb2Jhcg= =?=" <jo*****@nospam .nospam>
| > | References: <97************ *************** *******@microso ft.com>
| > <Q#************ **@TK2MSFTNGXA0 1.phx.gbl>
| > <5F************ *************** *******@microso ft.com>
| > <ld************ *************** *****@4ax.com>
| > <ED************ *************** *******@microso ft.com>
| > | Subject: Re: asp.net assembly best practices question...
| > | Date: Wed, 26 Oct 2005 12:46:01 -0700
| > | Lines: 82
| > | Message-ID: <3B************ *************** *******@microso ft.com>
| > | MIME-Version: 1.0
| > | Content-Type: text/plain;
| > | charset="Utf-8"
| > | Content-Transfer-Encoding: 7bit
| > | X-Newsreader: Microsoft CDO for Windows 2000
| > | Content-Class: urn:content-classes:message
| > | Importance: normal
| > | Priority: normal
| > | X-MimeOLE: Produced By Microsoft MimeOLE V6.00.3790.0
| > | Newsgroups: microsoft.publi c.dotnet.framew ork.aspnet
| > | NNTP-Posting-Host: TK2MSFTNGXA03.p hx.gbl 10.40.2.250
| > | Path: TK2MSFTNGXA01.p hx.gbl!TK2MSFTN GXA03.phx.gbl
| > | Xref: TK2MSFTNGXA01.p hx.gbl
| > microsoft.publi c.dotnet.framew ork.aspnet:1340 88
| > | X-Tomcat-NG: microsoft.publi c.dotnet.framew ork.aspnet
| > |
| > | Okay I found another thing which looks interesting.
| > |
| > | If I put an assembly info file in APP_Code folder, then an assembly
is
| > | created in the .net temporary folder called App_Code.rnuvm4 pf.dll,
which
| > | picked up the assembly version correctly. However, if it is kept
outside
| > the
| > | App_code, the code compiles and runs fine but the assemblyinfo is not
| > picked
| > | up correctly in the dll (it always shows 0.0.0.0).
| > |
| > | Thanks
| > | --
| > | -jojobar
| > |
| > |
| > | "jojobar" wrote:
| > |
| > | > Hello Scott,
| > | >
| > | > Thanks for replying. I read in scottgu's blog that MS is trying to
| > combine
| > | > the assemblies in folders in a website. That will be great!
| > | >
| > | > From your reply I gather that if I have xxx.aspx, xxx.aspx.cs and
| > support.cs
| > | > (where support.cs only has support functions for the xxx.aspx.cs)
in a
| > folder
| > | > and compile the web site, it will not compile it correctly.
However, if
| > I
| > | > copy support.cs in APP_Code it will!
| > | >
| > | > I have not tested it yet, but my understanding was that putting in
| > APP_Code
| > | > will compile it automatically, but you still have an option to
compile
| > it
| > | > yourself elsewhere (in the web site) if you want to. Putting things
in
| > | > APP_Code is not a big deal, but I am trying to find if this is
forced
| > or an
| > | > option.
| > | >
| > | > Also, I was wondering how to put the .js files into assembly (using
| > .axd) in
| > | > a web site, if there is no way to define attributes for the
assembly
| > (usually
| > | > you define this in the assemblyinfo.cs file).
| > | >
| > | > Thanks
| > | > --
| > | > -jojobar
| > | >
| > | >
| > | > "Scott Allen" wrote:
| > | >
| > | > > On Wed, 26 Oct 2005 06:51:04 -0700, "jojobar"
<jo*****@nospam .nospam>
| > | > > wrote:
| > | > >

Nov 19 '05 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
1497
by: Robert Zurer | last post by:
I notice that Microsoft puts their interfaces and classes in the same assembly. For example System.Data contains OleDbConnection and IDbConnection etc. I have found it useful to keep my interfaces in a separate assembly for a number of reasons. Among them are Avoiding circular references Hiding implementation from a remoting client...
136
9251
by: Matt Kruse | last post by:
http://www.JavascriptToolbox.com/bestpractices/ I started writing this up as a guide for some people who were looking for general tips on how to do things the 'right way' with Javascript. Their code was littered with document.all and eval, for example, and I wanted to create a practical list of best practices that they could easily put to...
2
1828
by: Donal McWeeney | last post by:
Hi, Are there any good guidance white papers out there on the best way to design and build assemblys in VS.Net that would cover the following questions I have and requirements I know of: The assembly(s) I build must be installed in the GAC. My assembly(s) needs to include the following: - my own class/utility librarary code
13
2263
by: john doe | last post by:
A quick question, about so-called 'best practices', I'm interested in which of A/B of the two examples people would choose, and why. public enum MyEnum { Option1 = 0, Option2 = 1, Option3 = 2, Option4 = 3
1
2271
by: Vincent V | last post by:
Hey i am just starting a new project and from the start i want to make sure my app is as Object Orientated as possible I have a couple of questions in relation to this Question 1: Should i Struction my solution in numerous projects ie 1. Webpage Files(ui) 2. Classes
10
2973
by: Ren | last post by:
Hi All, I'm still rather new at vb.net and would like to know the proper way to access private varibables in a class. Do I access the variable directly or do I use the public property? public class MyClass private _variableName as integer public property VariableName as integer
2
1668
by: CK | last post by:
Good Morning All, What the best way to use references? Reference a project in another project or reference a DLL. We are developing C# Sharp Web Apps in VS 2003. We are getting warnings like the following. Warning: The dependency 'TTT.Library, Version=1.0.0.1, Culture=neutral' in project 'Dmt' cannot be copied to the run directory because it...
0
1400
by: kanaille11 | last post by:
Hi, at the moment we have very strange problems with assembly directories: Following is the main structure of our project: - An ActiveX-control in "d:\TheProject\bin\debug" which is developed by us. It opens an assembly in the same directory (lets call it MainAssembly). That assembly contains a control which is then displayed in the...
0
2482
by: =?Utf-8?B?Sm9iIExvdA==?= | last post by:
I have created Exception Handling Policy that shows a custom error message using Custom Handler and logs it to event log using Logging Handler. I am using this policy in various layers of my solution. Issue is when I call HandleException method in a project of type class library, it gives the following error. If I call the same method in a...
0
7661
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language...
0
7978
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. ...
0
8167
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that...
0
8028
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the...
0
5252
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert...
0
3692
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in...
0
3688
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
1263
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
0
987
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.