本文整理汇总了C#中IPropertyBag.Copy方法的典型用法代码示例。如果您正苦于以下问题:C# IPropertyBag.Copy方法的具体用法?C# IPropertyBag.Copy怎么用?C# IPropertyBag.Copy使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IPropertyBag
的用法示例。
在下文中一共展示了IPropertyBag.Copy方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Parse
/// <summary>
/// Parses the given <paramref name="parameters"/> into a <see cref="Query"/>.
/// </summary>
/// <param name="context">The <see cref="IMansionContext"/>.</param>
/// <param name="parameters">The parameters which to parse.</param>
/// <returns>Returns the <see cref="Query"/>.</returns>
/// <exception cref="ArgumentNullException">Throw if <paramref name="context"/> or <paramref name="parameters"/> is null.</exception>
/// <exception cref="InvalidOperationException">Thrown if any of the parameters could not be parsed into a query.</exception>
public Query Parse(IMansionContext context, IPropertyBag parameters)
{
// validate arguments
if (context == null)
throw new ArgumentNullException("context");
if (parameters == null)
throw new ArgumentNullException("parameters");
// create a copy of the parameters, we do not want to change the parameters here
var parametersCopy = parameters.Copy();
// parse the query
var query = DoParse(context, parametersCopy);
// check to make sure all parameters are eaten
if (parametersCopy.Count != 0)
throw new InvalidOperationException(string.Format("Could not parse parameters {0} into a query", string.Join(", ", parametersCopy.Names)));
// return the created query
return query;
}