当前位置: 首页>>代码示例>>C#>>正文


C# Scenario.AddTypedMember方法代码示例

本文整理汇总了C#中Scenario.AddTypedMember方法的典型用法代码示例。如果您正苦于以下问题:C# Scenario.AddTypedMember方法的具体用法?C# Scenario.AddTypedMember怎么用?C# Scenario.AddTypedMember使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Scenario的用法示例。


在下文中一共展示了Scenario.AddTypedMember方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: CompareDimensionOrder

        public static void CompareDimensionOrder()
        {
            var first = new Scenario();
            first.AddExplicitMember("AA", "foo:bar");
            first.AddExplicitMember("BB", "bar:foo");
            first.AddTypedMember("CC", "CA", "aa");
            first.AddTypedMember("DD", "DA", "bb");

            var second = new Scenario();

            second.AddExplicitMember("BB", "bar:foo");
            second.AddExplicitMember("AA", "foo:bar");
            second.AddTypedMember("DD", "DA", "bb");
            second.AddTypedMember("CC", "CA", "aa");

            Assert.IsTrue(first.Equals(second));
        }
开发者ID:dgm9704,项目名称:Xoxo,代码行数:17,代码来源:InstanceTests.cs

示例2: CreateSolvencyInstance

        static Instance CreateSolvencyInstance()
        {
            // Sets default namespaces and units PURE, EUR
            var instance = new Instance();

            // When an explicit member is added, check that the namespace for the domain has been set
            instance.CheckExplicitMemberDomainExists = true;

            // Initialize to the correct framework, module, taxonomy
            // The content is NOT validated against taxonomy or module schema
            // set module
            instance.SchemaReference = new SchemaReference("simple", "http://eiopa.europa.eu/eu/xbrl/s2md/fws/solvency/solvency2/2014-12-23/mod/ars.xsd");

            // set taxonomy
            instance.TaxonomyVersion = "1.5.2.c";

            // "basic" namespaces
            // These are used for adding correct prefixes for different elements
            instance.SetMetricNamespace("s2md_met", "http://eiopa.europa.eu/xbrl/s2md/dict/met");
            instance.SetDimensionNamespace("s2c_dim", "http://eiopa.europa.eu/xbrl/s2c/dict/dim");
            instance.SetTypedDomainNamespace("s2c_typ", "http://eiopa.europa.eu/xbrl/s2c/dict/typ");

            // Namespaces for actual reported values that belong to a domain (explicit members)
            instance.AddDomainNamespace("s2c_CS", "http://eiopa.europa.eu/xbrl/s2c/dict/dom/CS");
            instance.AddDomainNamespace("s2c_AM", "http://eiopa.europa.eu/xbrl/s2c/dict/dom/AM");

            // Add reporter and period
            // These will be reused across all contexts by default
            // Scheme or value are NOT validated
            instance.Entity = new Entity("http://standards.iso.org/iso/17442", "1234567890ABCDEFGHIJ");
            instance.Period = new Period(2014, 12, 31);

            // Any units that aren't used will be excluded during serialization
            // So it's safe to add extra units if needed
            instance.Units.Add("uEUR", "iso4217:EUR");
            instance.Units.Add("uPURE", "xbrli:pure");
            instance.Units.Add("uFOO", "foo:bar");

            // Add filing indicators
            // These are NOT validated against actual reported values
            instance.AddFilingIndicator("S.01.01");
            instance.AddFilingIndicator("S.02.02");

            // A scenario contains the dimensions and their values for a datapoint
            var scenario = new Scenario();

            // Dimensions and domains can be given with or without namespaces
            // The namespace prefixes are added internally if needed
            // Explicit member values DO NEED the prefix
            scenario.AddExplicitMember("CS", "s2c_CS:x26");
            scenario.AddTypedMember("CE", "ID", "abc");

            // Metrics can also be given with or without namespace
            // Metric names, values or decimals are NOT validated
            // Unit is NOT checked to exist
            instance.AddFact(scenario, "pi545", "uPURE", "4", "0.2547");

            // if a scenario with the given values already exists in the instance, it will be reused
            // you don't have to check for duplicates
            instance.AddFact(scenario, "mi363", "uEUR", "-3", "45345");

            // Non - existing unit throws KeyNotFoundException
            try
            {
                instance.AddFact(scenario, "mi363", "uSEK", "-3", "45345");
            }
            catch (KeyNotFoundException ex)
            {
                Console.WriteLine(ex.Message);
            }

            var invalidScenario = new Scenario();

            // Member has value with domain that has no corresponding namespace
            invalidScenario.AddExplicitMember("CS", "s2c_XA:x0");
            try
            {
                // This can only be observed when the scenario is attached to the instance
                // ie. previous line is ok but this one throws
                instance.AddFact(invalidScenario, "mi252", "uEUR", "4", "123456");
            }
            catch (InvalidOperationException ex)
            {
                Console.WriteLine(ex.Message);
            }

            return instance;
        }
开发者ID:dgm9704,项目名称:Xoxo,代码行数:88,代码来源:InstanceTests.cs

示例3: WriteEmptyTypedMember

        public static void WriteEmptyTypedMember()
        {
            var instance = CreateSolvencyInstance();
            instance.CheckExplicitMemberDomainExists = true;

            var scenario = new Scenario();
            scenario.AddTypedMember("CE", "ID", null);
            instance.AddFact(scenario, "mi1234", null, null, "123");
            instance.RemoveUnusedObjects();
            instance.ToFile(Path.Combine(TestContext.CurrentContext.TestDirectory, "typedmembernil.xbrl.xml"));
        }
开发者ID:dgm9704,项目名称:Xoxo,代码行数:11,代码来源:InstanceTests.cs


注:本文中的Scenario.AddTypedMember方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。