#pragma warning disable 649    // disable compiler warnings about unassigned fields

namespace MasterDetailsWithRIAServices.Web.Models
{
	using System;
	using System.Collections.Generic;
	using System.ComponentModel;
	using System.ComponentModel.DataAnnotations;
	using System.Data.Objects.DataClasses;
	using System.Linq;
	using System.Web.DomainServices;
	using System.Web.Ria;
	using System.Web.Ria.Services;


	// The MetadataTypeAttribute identifies AlbumMetadata as the class
	// that carries additional metadata for the Album class.
	[MetadataTypeAttribute(typeof(Album.AlbumMetadata))]
	public partial class Album
	{

		// This class allows you to attach custom attributes to properties
		// of the Album class.
		//
		// For example, the following marks the Xyz property as a
		// required field and specifies the format for valid values:
		//    [Required]
		//    [RegularExpression("[A-Z][A-Za-z0-9]*")]
		//    [StringLength(32)]
		//    public string Xyz;
		internal sealed class AlbumMetadata
		{

			// Metadata classes are not meant to be instantiated.
			private AlbumMetadata()
			{
			}

			public int AlbumId;

			public Artist Artist;

			public string Title;
		}
	}

	// The MetadataTypeAttribute identifies ArtistMetadata as the class
	// that carries additional metadata for the Artist class.
	[MetadataTypeAttribute(typeof(Artist.ArtistMetadata))]
	public partial class Artist
	{

		// This class allows you to attach custom attributes to properties
		// of the Artist class.
		//
		// For example, the following marks the Xyz property as a
		// required field and specifies the format for valid values:
		//    [Required]
		//    [RegularExpression("[A-Z][A-Za-z0-9]*")]
		//    [StringLength(32)]
		//    public string Xyz;
		internal sealed class ArtistMetadata
		{

			// Metadata classes are not meant to be instantiated.
			private ArtistMetadata()
			{
			}

			public EntityCollection<Album> Album;

			public int ArtistId;

			public string Name;
		}
	}
}

#pragma warning restore 649    // re-enable compiler warnings about unassigned fields
