471,337 Members | 1,167 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 471,337 software developers and data experts.

Using <param> XML tag to create Intellisense for my DLL.

So I wrote a DLL in 2.0. An example of one of the funtions is:

/// <summary>
/// db_task..file_master_list
/// </summary>
/// <param name="panConnection">
/// Pass the PanApp.Connection object by reference
/// </param>
/// <param name="source_id">
/// Default Value = 0
/// </param>
/// <param name="frequency_cd">
/// Default Value = ""
/// </param>
public static int file_master_list(ref SqlConnection panConnection, int
source_id, string frequency_cd, string search_string)
{
return 0;
}

This alone, did NOT give me the intellisense from the app calling this
DLL.

So I added /doc:db_taskLib.dll.xml as the only Pre-Build event.

On the build, I get the error:
The command "/doc:db_taskLib.dll.xml" exited with code 123.

In the bin/debug folder, I have an XML file consisting of just this:
<?xml version="1.0" ?>
- <doc>
- <assembly>
<name>db_taskLib</name>
</assembly>
<members />
</doc>

despite the fact that there is a ton of XML in my code.
Additionally, there are still no comments poping up with my
intellisense.

I have searched the forums pretty thouroughly on this topic, and
according to what I am reading, I have done enough that it SHOULD work,
but it's not.

If anyone has any idea what else I need to do, please let me know.

Thanks,
Mike

Feb 17 '06 #1
8 5785
Mike,
Normally the only requirement to have complete xml documentation generated
during a build is to right-click the project in Solution Explorer, navigate
to the Configuration Properties / Build node, and fill in a path and xml
filename in the
"XML Documentation file" textbox, such as "doc\mylibraryname.xml"
Peter

--
Co-founder, Eggheadcafe.com developer portal:
http://www.eggheadcafe.com
UnBlog:
http://petesbloggerama.blogspot.com


"Mi************@gmail.com" wrote:
So I wrote a DLL in 2.0. An example of one of the funtions is:

/// <summary>
/// db_task..file_master_list
/// </summary>
/// <param name="panConnection">
/// Pass the PanApp.Connection object by reference
/// </param>
/// <param name="source_id">
/// Default Value = 0
/// </param>
/// <param name="frequency_cd">
/// Default Value = ""
/// </param>
public static int file_master_list(ref SqlConnection panConnection, int
source_id, string frequency_cd, string search_string)
{
return 0;
}

This alone, did NOT give me the intellisense from the app calling this
DLL.

So I added /doc:db_taskLib.dll.xml as the only Pre-Build event.

On the build, I get the error:
The command "/doc:db_taskLib.dll.xml" exited with code 123.

In the bin/debug folder, I have an XML file consisting of just this:
<?xml version="1.0" ?>
- <doc>
- <assembly>
<name>db_taskLib</name>
</assembly>
<members />
</doc>

despite the fact that there is a ton of XML in my code.
Additionally, there are still no comments poping up with my
intellisense.

I have searched the forums pretty thouroughly on this topic, and
according to what I am reading, I have done enough that it SHOULD work,
but it's not.

If anyone has any idea what else I need to do, please let me know.

Thanks,
Mike

Feb 17 '06 #2
P.S.--
In 2.0, under the Build Menu, check the "XML Documentation File" checkbox
and ensure there is at least the default file name there.
Peter

--
Co-founder, Eggheadcafe.com developer portal:
http://www.eggheadcafe.com
UnBlog:
http://petesbloggerama.blogspot.com


"Mi************@gmail.com" wrote:
So I wrote a DLL in 2.0. An example of one of the funtions is:

/// <summary>
/// db_task..file_master_list
/// </summary>
/// <param name="panConnection">
/// Pass the PanApp.Connection object by reference
/// </param>
/// <param name="source_id">
/// Default Value = 0
/// </param>
/// <param name="frequency_cd">
/// Default Value = ""
/// </param>
public static int file_master_list(ref SqlConnection panConnection, int
source_id, string frequency_cd, string search_string)
{
return 0;
}

This alone, did NOT give me the intellisense from the app calling this
DLL.

So I added /doc:db_taskLib.dll.xml as the only Pre-Build event.

On the build, I get the error:
The command "/doc:db_taskLib.dll.xml" exited with code 123.

In the bin/debug folder, I have an XML file consisting of just this:
<?xml version="1.0" ?>
- <doc>
- <assembly>
<name>db_taskLib</name>
</assembly>
<members />
</doc>

despite the fact that there is a ton of XML in my code.
Additionally, there are still no comments poping up with my
intellisense.

I have searched the forums pretty thouroughly on this topic, and
according to what I am reading, I have done enough that it SHOULD work,
but it's not.

If anyone has any idea what else I need to do, please let me know.

Thanks,
Mike

Feb 17 '06 #3
Thanks for the response!

I had the /doc:db_taskLib.dll.xml command as a pre-build event.
I didnt notice it in the Configuration Properties/Build node.

So I changed it, and I am no longer getting that exit code 123 error on
the build... AND I am getting an XML file that matches whats in the
source code.

However, still no Intellisense when i reference my DLL from another
project.
I get a bunch of warnings because I have <param> tags describing some,
but not ALL parameters... is it a requirement that all the parameters
of a function have tags for the intellisense to work?

Feb 17 '06 #4
On 17 Feb 2006 13:05:19 -0800, "Mi************@gmail.com"
<Mi************@gmail.com> wrote:
However, still no Intellisense when i reference my DLL from another
project.
I get a bunch of warnings because I have <param> tags describing some,
but not ALL parameters... is it a requirement that all the parameters
of a function have tags for the intellisense to work?


No, although it would be nice if your documentation were complete!

But your problem, I think, is that you're referencing the DLL only.
The XML file resides in the DLL directory; but Visual Studio looks for
XML documentation files in its temporary build directories (named
"Build" or "Release" and located under project directories).

You need to reference the Visual Studio _project_ that is used to
build this DLL. That will cause VS to copy all output files to its
build directories -- both the DLL and the XML file -- and IntelliSense
should work on this library.

There should be an alternative way since the CLR DLLs aren't copied to
the build directories, yet IntelliSense works on them anyway... but I
don't know how to do that for your own libraries.
--
http://www.kynosarges.de
Feb 18 '06 #5
Thank You.

I agree, there should be a way to have the intellisense work
referencing just the DLL... hopefully in 3.0....

But anyway, if I create a project in the same solution as my DLL, I can
reference that project no problem. I click 'Add Reference', go to the
Projects Tab, and there it is. And when I reference the project, the
intellisense works like a charm!

But... if I need to reference the project from a different solution and
click 'Add References', and go to the Projects Tab, the list is empty,
and there doesnt seem to be a way to fill it with a project from
another solution. Using Browse does not work, because it is only
looking for files that can be components, and if I filter on *.*, and
select a project file, it gives me an error becuase a project file is
not a component.

Any idea how to reference a project from another solution?

Feb 22 '06 #6
On 22 Feb 2006 07:55:08 -0800, "Mi************@gmail.com"
<Mi************@gmail.com> wrote:
Any idea how to reference a project from another solution?


Just add the project itself. Don't use "Add Reference" -- use "Add
Existing Project", then select the project file.
--
http://www.kynosarges.de
Feb 22 '06 #7
hmm... i was afriad that was going to be the answer.

see the thing i liked about just adding the dll as a reference is that
lets say i am building a new project, and referencing the dll... then
someone else goes and changes that dll and re-builds it, and puts the
update out on the network... my dll, which is pointing to that file on
the network automatically refreshes with those new changes.

If i have to add the whole project to my solution, then someone goes
and adds something to the assembly and rebuilds it, does my reference
to the project automatically update?

Feb 22 '06 #8
I just answered my own question here. Yes, the reference to the project
updates when someone else updates the project.

Being able to reference just the DLL would be ideal, but referencing
the whole project gets the job done.

thanks

Feb 22 '06 #9

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

5 posts views Thread by lvcha.gouqizi | last post: by
2 posts views Thread by Jesper. | last post: by
5 posts views Thread by news.bellatlantic.net | last post: by
reply views Thread by Tarren | last post: by
2 posts views Thread by Andrew Neiderer | last post: by
1 post views Thread by shalini jain | last post: by

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.