Linking problem?

I have this solution with lots of existing projects I have brought in.

I have been able to access the properties and methods of the other Assemblies just fine.

But even though I have added assembly called "NEOMail" and it does have a public method exposed.....it fails to show up when I try to declare a variable of that type:

http://www.knowltonfamily.com/linking_prob.gif
LVL 5
Tom KnowltonWeb developerAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

 
dfiala13Commented:
knowlton,
two things:
1)Does the class only have static methods?  If so then you can't declare an instance, you can just use it...

NeoMail.SendMessage("");

2) Have you set your using NeoMail at the top of the class declaration?
0
 
Tom KnowltonWeb developerAuthor Commented:
Here is the code for NEOMail:

Other assemblies have similar code and are linking in just fine!


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

using System;
using System.Web.Mail;

namespace BuyerFund
{
      namespace NEOMail
      {
            /// <summary>
            /// Summary description for Class1.
            /// </summary>
            public class NEOMail
            {
            private string NEOEmail_To="";
                  private string NEOEmail_From="";
            private string NEOEmail_CarbonCopy="";
                  private string NEOEmail_Subject="";
                  private string NEOEmail_Body="";
            private string NEOEmail_AttachmentOne="";
                  private string NEOEmail_AttachmentTwo="";
                  private string NEOEmail_AttachmentThree="";
            private string NEOEmail_AttachmentFour="";
                  private string NEOEmail_PriorityIfFax = "";            


//if needed                  private ArrayList arLines = new ArrayList();
                  public BuyersFund.GatherMessages.GatherMessages gmMessage = new BuyersFund.GatherMessages.GatherMessages();
                  public BuyersFund.FormattingLib.FormattingLib formatLIB = new BuyersFund.FormattingLib.FormattingLib();
                  public BuyersFund.GeneralFunctions.GeneralFunctions genFuncs = new BuyersFund.GeneralFunctions.GeneralFunctions();

                  public NEOMail()
                  {
                        //
                        // TODO: Add constructor logic here
                        //
                  }

                  #region  Setters and Getters
                  
                  public string NMailTo
                  {
                        set
                        {
                              NEOEmail_To = value;
                        }

                        get
                        {
                              return NEOEmail_To;
                        }
                  }

                  public string NMailFrom
                  {
                        set
                        {
                              NEOEmail_From = value;
                        }

                        get
                        {
                              return NEOEmail_From;
                        }
                  }

                  public string NMailCarbonCopy
                  {
                        set
                        {
                              NEOEmail_CarbonCopy = value;
                        }

                        get
                        {
                              return NEOEmail_CarbonCopy;
                        }
                  }

                  public string NMailSubject
                  {
                        set
                        {
                              NEOEmail_Subject = value;
                        }

                        get
                        {
                              return NEOEmail_Subject;
                        }
                  }

                  public string NMailBody
                  {
                        set
                        {
                              NEOEmail_Body = value;
                        }

                        get
                        {
                              return NEOEmail_Body;
                        }
                  }

                  public string NMailAttachmentOne
                  {
                        set
                        {
                              NEOEmail_AttachmentOne = value;
                        }

                        get
                        {
                              return NEOEmail_AttachmentOne;
                        }
                  }

                  public string NMailAttachmentTwo
                  {
                        set
                        {
                              NEOEmail_AttachmentTwo = value;
                        }

                        get
                        {
                              return NEOEmail_AttachmentTwo;
                        }
                  }

                  public string NMailAttachmentThree
                  {
                        set
                        {
                              NEOEmail_AttachmentThree = value;
                        }

                        get
                        {
                              return NEOEmail_AttachmentThree;
                        }
                  }

                  public string NMailAttachmentFour
                  {
                        set
                        {
                              NEOEmail_AttachmentFour = value;
                        }

                        get
                        {
                              return NEOEmail_AttachmentFour;
                        }
                  }

                  public string NMailAttachmentPriorityIfFax
                  {
                        set
                        {
                              NEOEmail_PriorityIfFax = value;
                        }

                        get
                        {
                              return NEOEmail_PriorityIfFax;
                        }
                  }
#endregion


                  //returns 0 if okay
                  //returns 1 if error
                  public int SendFax()
                  {
                        try
                        {
                              MailMessage MyMail = new MailMessage();
                              MyMail.From = "Administrator@buyersfund.com";
                              //MyMail.To = FAXMAKER_EMAIL + this.strFaxNumber + FAXMAKER_DOMAIN;
                              MyMail.To = this.NEOEmail_To;
                              MyMail.Cc = this.NEOEmail_CarbonCopy;
                              MyMail.Subject = "TEST .NET built-in mail";
                              MyMail.Body = "::p=" + this.NEOEmail_PriorityIfFax;
                              //MailAttachment myAttachment = new MailAttachment(strFaxDocPath);
                        
                              //For testing...will generate exception
                              //MailAttachment myAttachment = new MailAttachment("sadfs");
                              //MyMail.Attachments.Add(myAttachment);
                              SmtpMail.Send(MyMail);                    
                              return 0;                              
                        }
                        catch(Exception e)
                        {
                              gmMessage.AddMessage("IT","There was a problem faxing.  Details:  " + e.StackTrace);
                              return 1;                              
                        }                  
                  }

            }
      }
}
0
 
dfiala13Commented:
Typo when you try to reference it.

Namespace is BuyerFund, not BuyersFund
0

Experts Exchange Solution brought to you by ConnectWise

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

 
Tom KnowltonWeb developerAuthor Commented:
NEOMail.    does not bring up code completion for the public method SendFax(  ) or for any of the Setters / Getters I have written.
0
 
Tom KnowltonWeb developerAuthor Commented:
Ohhhhh......you are so right......geez I hate that!!!!!!!!!!!!

Was supposed to be BuyersFund not BuyerFund.....


Thanks,

Tom
0
 
dfiala13Commented:
No problem, happens to me too.
0
 
Tom KnowltonWeb developerAuthor Commented:
:)

Confirmed....it works now.  


Tom
0
 
dfiala13Commented:
Excellent!

Dean
0
 
Tom KnowltonWeb developerAuthor Commented:
I want to ask you something else.....

I've noticed that you can add lots of existing projects to one solution.

Is it pretty common practice to add all company related projects under ONE solution.....for easy access, etc.?
0
 
dfiala13Commented:
I think it depends.  If you add them all to one solution you are constantly rebuilding them which can start to effect versioning, etc., not to mention compile time.  When you're in dev mode and things are all fluid, it is probably useful to keep them all in one solution.  However, once you have started to lock projects down it is probably best to move them out of the solution and just reference the assembly.  Especially true for assemblies that are shared by multiple applications.
0
 
Tom KnowltonWeb developerAuthor Commented:
Okay....

I have noticed that I am naturally grouping set of Assemblies together for different projects I work on....and had the thought, "Hey why don't I just lump ALL OF THEM together into one big solution...???"

I think you have laid out the pros and cons of this quite nicely.
0
 
Tom KnowltonWeb developerAuthor Commented:
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.