Beispiel #1
0
        public AddInControllerFactory(string areaName,
                                      CompositionContainer container,
                                      IControllerFactory controllerFactory)
        {
            this._areaName      = areaName;
            this._key           = new object();
            this._container     = container;
            this._nestedFactory = controllerFactory;
            this._importBuilder =
                new MetadataContractBuilder <IController, IControllerMetadata>(ContractNames.AdminController,
                                                                               ImportCardinality.ExactlyOne,
                                                                               CreationPolicy.NonShared);

            this._importBuilder.Add(
                (contract, meta) => StringComparer.OrdinalIgnoreCase.Equals(meta.Name, contract.Name));
            this._importBuilder.Add(
                (contract, meta) => StringComparer.Ordinal.Equals(meta.PackageId, contract.PackageId));
            this._importBuilder.Add(
                (contract, meta) => StringComparer.Ordinal.Equals(meta.PackageVersion, contract.PackageVersion));
        }
        public AddInControllerFactory(string areaName, 
                                      CompositionContainer container, 
                                      IControllerFactory controllerFactory)
        {
            this._areaName = areaName;
            this._key = new object();
            this._container = container;
            this._nestedFactory = controllerFactory;
            this._importBuilder =
                new MetadataContractBuilder<IController, IControllerMetadata>(ContractNames.AdminController, 
                                                                              ImportCardinality.ExactlyOne, 
                                                                              CreationPolicy.NonShared);

            this._importBuilder.Add(
                (contract, meta) => StringComparer.OrdinalIgnoreCase.Equals(meta.Name, contract.Name));
            this._importBuilder.Add(
                (contract, meta) => StringComparer.Ordinal.Equals(meta.PackageId, contract.PackageId));
            this._importBuilder.Add(
                (contract, meta) => StringComparer.Ordinal.Equals(meta.PackageVersion, contract.PackageVersion));
        }
Beispiel #3
0
 public MetadataValueBuilder(MetadataContractBuilder <T, TMetadata> owner)
 {
     this._owner    = owner;
     this._instance = this._owner._metadataCtor();
 }