// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
+using System;
using System.Xml;
+using Microsoft.Build.Exceptions;
+
+
namespace Microsoft.Build.Construction
{
[System.Diagnostics.DebuggerDisplayAttribute ("Project={Project} Condition={Condition}")]
ContainingProject = containingProject;
}
- public string Project { get; set; }
+ string project;
+ public string Project { get { return project ?? String.Empty; } set { project = value; } }
internal override string XmlName {
get { return "Import"; }
SaveAttribute (writer, "Project", Project);
base.SaveValue (writer);
}
+
+ internal override void LoadValue (XmlReader reader)
+ {
+ if (string.IsNullOrWhiteSpace (Project))
+ throw new InvalidProjectFileException (Location, null, "Project attribute is null or empty on an Import element");
+ base.LoadValue (reader);
+ }
internal override void LoadAttribute (string name, string value)
{