Imported Upstream version 4.0.0~alpha1

Former-commit-id: 806294f5ded97629b74c85c09952f2a74fe182d9
This commit is contained in:
Jo Shields
2015-04-07 09:35:12 +01:00
parent 283343f570
commit 3c1f479b9d
22469 changed files with 2931443 additions and 869343 deletions

View File

@ -0,0 +1,43 @@
namespace System.Web.ModelBinding {
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
// Describes a complex model, but uses a collection rather than individual properties as the data store.
public class ComplexModel {
public ComplexModel(ModelMetadata modelMetadata, IEnumerable<ModelMetadata> propertyMetadata) {
if (modelMetadata == null) {
throw new ArgumentNullException("modelMetadata");
}
if (propertyMetadata == null) {
throw new ArgumentNullException("propertyMetadata");
}
ModelMetadata = modelMetadata;
PropertyMetadata = new ReadOnlyCollection<ModelMetadata>(propertyMetadata.ToList());
Results = new Dictionary<ModelMetadata, ComplexModelResult>();
}
public ModelMetadata ModelMetadata {
get;
private set;
}
public ReadOnlyCollection<ModelMetadata> PropertyMetadata {
get;
private set;
}
// Contains entries corresponding to each property against which binding was
// attempted. If binding failed, the entry's value will be null. If binding
// was never attempted, this dictionary will not contain a corresponding
// entry.
public IDictionary<ModelMetadata, ComplexModelResult> Results {
get;
private set;
}
}
}