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


C# X509CertificateCollection.AddRange方法代码示例

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


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

示例1: GcmXmppConnection

        public GcmXmppConnection (GcmXmppConfiguration configuration)
        {
            authCompletion = new TaskCompletionSource<bool> ();

            notifications = new Dictionary<string,CompletableNotification> ();
            Configuration = configuration;

            certificates = new X509CertificateCollection ();

            // Add local/machine certificate stores to our collection if requested
            //if (Configuration.AddLocalAndMachineCertificateStores) {
                var store = new X509Store (StoreLocation.LocalMachine);
                certificates.AddRange (store.Certificates);

                store = new X509Store (StoreLocation.CurrentUser);
                certificates.AddRange (store.Certificates);
            //}

            // Add optionally specified additional certs into our collection
//            if (Configuration.AdditionalCertificates != null) {
//                foreach (var addlCert in Configuration.AdditionalCertificates)
//                    certificates.Add (addlCert);
//            }

            // Finally, add the main private cert for authenticating to our collection
//            if (certificate != null)
//                certificates.Add (certificate);
        }
开发者ID:CalebKoch,项目名称:PushSharp,代码行数:28,代码来源:GcmXmppConnection.cs

示例2: ApplePushChannel

        public ApplePushChannel(ApplePushChannelSettings channelSettings)
        {
            cancelToken = cancelTokenSrc.Token;

            appleSettings = channelSettings;

            certificate = this.appleSettings.Certificate;

            certificates = new X509CertificateCollection();

            if (appleSettings.AddLocalAndMachineCertificateStores)
            {
                var store = new X509Store(StoreLocation.LocalMachine);
                certificates.AddRange(store.Certificates);

                store = new X509Store(StoreLocation.CurrentUser);
                certificates.AddRange(store.Certificates);
            }

            certificates.Add(certificate);

            if (this.appleSettings.AdditionalCertificates != null)
                foreach (var addlCert in this.appleSettings.AdditionalCertificates)
                    certificates.Add(addlCert);

            timerCleanup = new Timer(state => Cleanup(), null, TimeSpan.FromMilliseconds(1000), TimeSpan.FromMilliseconds(1000));
        }
开发者ID:vniu,项目名称:PushSharp,代码行数:27,代码来源:ApplePushChannel.cs

示例3: ApplePushChannel

        public ApplePushChannel(ApplePushChannelSettings channelSettings, PushServiceSettings serviceSettings = null)
            : base(channelSettings, serviceSettings)
        {
            this.appleSettings = channelSettings;

            certificate = this.appleSettings.Certificate;

            certificates = new X509CertificateCollection();

            if (appleSettings.AddLocalAndMachineCertificateStores)
            {
                var store = new X509Store(StoreLocation.LocalMachine);
                certificates.AddRange(store.Certificates);

                store = new X509Store(StoreLocation.CurrentUser);
                certificates.AddRange(store.Certificates);
            }

            certificates.Add(certificate);

            if (this.appleSettings.AdditionalCertificates != null)
                foreach (var addlCert in this.appleSettings.AdditionalCertificates)
                    certificates.Add(addlCert);

            //Start our cleanup task
            taskCleanup = new Task(() => Cleanup(), TaskCreationOptions.LongRunning);
            taskCleanup.ContinueWith((t) => { var ex = t.Exception; }, TaskContinuationOptions.OnlyOnFaulted);
            taskCleanup.Start();
        }
开发者ID:ngoossens,项目名称:PushSharp,代码行数:29,代码来源:ApplePushChannel.cs

示例4: ConfigureCertificates

		private void ConfigureCertificates()
		{
			_certificate = _appleSettings.Certificate;

			_certificates = new X509CertificateCollection();

			if (_appleSettings.AddLocalAndMachineCertificateStores)
			{
				var store = new X509Store(StoreLocation.LocalMachine);
				_certificates.AddRange(store.Certificates);

				store = new X509Store(StoreLocation.CurrentUser);
				_certificates.AddRange(store.Certificates);
			}

			_certificates.Add(_certificate);

			if (_appleSettings.AdditionalCertificates != null)
			{
				foreach (var additionalCertificate in _appleSettings.AdditionalCertificates)
				{
					_certificates.Add(additionalCertificate);
				}
			}
		}
开发者ID:greg84,项目名称:PushSharp,代码行数:25,代码来源:ApplePushChannel.cs

示例5: ApnsConnection

        public ApnsConnection(ApnsConfiguration configuration)
        {
            id = ++ID;
            if (id >= int.MaxValue)
                ID = 0;

            Configuration = configuration;

            certificate = Configuration.Certificate;

            certificates = new X509CertificateCollection();

            // Add local/machine certificate stores to our collection if requested
            if (Configuration.AddLocalAndMachineCertificateStores)
            {
                var store = new X509Store(StoreLocation.LocalMachine);
                certificates.AddRange(store.Certificates);

                store = new X509Store(StoreLocation.CurrentUser);
                certificates.AddRange(store.Certificates);
            }

            // Add optionally specified additional certs into our collection
            if (Configuration.AdditionalCertificates != null)
            {
                foreach (var addlCert in Configuration.AdditionalCertificates)
                    certificates.Add(addlCert);
            }

            // Finally, add the main private cert for authenticating to our collection
            if (certificate != null)
                certificates.Add(certificate);

            timerBatchWait = new Timer(new TimerCallback(async state =>
            {

                await batchSendSemaphore.WaitAsync();
                try
                {
                    await SendBatch().ConfigureAwait(false);
                }
                finally
                {
                    batchSendSemaphore.Release();
                }

            }), null, Timeout.Infinite, Timeout.Infinite);
        }
开发者ID:Donnie888,项目名称:LxServer,代码行数:48,代码来源:ApnsConnection.cs

示例6: ApnsHttp2Connection

        public ApnsHttp2Connection (ApnsHttp2Configuration configuration)
        {
            id = ++ID;
            if (id >= int.MaxValue)
                ID = 0;

            Configuration = configuration;

            certificate = Configuration.Certificate;

            certificates = new X509CertificateCollection ();

            // Add local/machine certificate stores to our collection if requested
            if (Configuration.AddLocalAndMachineCertificateStores) {
                var store = new X509Store (StoreLocation.LocalMachine);
                certificates.AddRange (store.Certificates);

                store = new X509Store (StoreLocation.CurrentUser);
                certificates.AddRange (store.Certificates);
            }

            // Add optionally specified additional certs into our collection
            if (Configuration.AdditionalCertificates != null) {
                foreach (var addlCert in Configuration.AdditionalCertificates)
                    certificates.Add (addlCert);
            }

            // Finally, add the main private cert for authenticating to our collection
            if (certificate != null)
                certificates.Add (certificate);

            var http2Settings = new HttpTwo.Http2ConnectionSettings (
                Configuration.Host,
               (uint)Configuration.Port, 
                true, 
                certificates);
            
            http2 = new HttpTwo.Http2Client (http2Settings);
        }
开发者ID:CalebKoch,项目名称:PushSharp,代码行数:39,代码来源:ApnsHttp2Connection.cs

示例7: ApplePushChannel

        public ApplePushChannel(ApplePushChannelSettings channelSettings)
        {
            cancelToken = cancelTokenSrc.Token;

            appleSettings = channelSettings;

            certificate = this.appleSettings.Certificate;

            certificates = new X509CertificateCollection();

            if (appleSettings.AddLocalAndMachineCertificateStores)
            {
                var store = new X509Store(StoreLocation.LocalMachine);
                certificates.AddRange(store.Certificates);

                store = new X509Store(StoreLocation.CurrentUser);
                certificates.AddRange(store.Certificates);
            }

            certificates.Add(certificate);

            if (this.appleSettings.AdditionalCertificates != null)
                foreach (var addlCert in this.appleSettings.AdditionalCertificates)
                    certificates.Add(addlCert);

            timerCleanup = new Timer(state => Cleanup(), null, TimeSpan.FromMilliseconds(1000), TimeSpan.FromMilliseconds(1000));

            if (channelSettings.IdleConnectionResetTimeout.HasValue)
            {
                this.IdleConnectionResetTimer.Interval = channelSettings.IdleConnectionResetTimeout.Value.TotalMilliseconds;
                this.IdleConnectionResetTimer.AutoReset = false;
                this.IdleConnectionResetTimer.Elapsed += (sender, e) =>
                {
                    disconnect();
                };
            }
        }
开发者ID:jaydeboer,项目名称:PushSharp,代码行数:37,代码来源:ApplePushChannel.cs

示例8: open

		public void open()
		{
			try {
				X509Store store = new X509Store(StoreLocation.LocalMachine);
				store.Open(OpenFlags.ReadOnly);

				X509CertificateCollection certificates = new X509CertificateCollection();
				certificates.AddRange(store.Certificates);

				client = new TcpClient();
				client.Connect("gateway.sandbox.push.apple.com", 2195);

				LocalCertificateSelectionCallback localCallBack = new LocalCertificateSelectionCallback(APNSLocalCert.SelectLocalCertificate);

				stream = new SslStream(client.GetStream(), false, (sender, cert, chain, sslPolicyErrors) => true, localCallBack);
				stream.AuthenticateAsClient("gateway.sandbox.push.apple.com", certificates, System.Security.Authentication.SslProtocols.Tls, false);
			} catch (Exception ex) { Console.Write(ex.Message); }
		}
开发者ID:stevesloka,项目名称:bvcms,代码行数:18,代码来源:APNSConnection.cs

示例9: GetClientCertificates

    /// <summary>
    /// Retrieve client SSL certificates. Dependent on connection string 
    /// settings we use either file or store based certificates.
    /// </summary>
    private X509CertificateCollection GetClientCertificates()
    {
      X509CertificateCollection certs = new X509CertificateCollection();

      // Check for file-based certificate
      if (Settings.CertificateFile != null)
      {
        if (!Version.isAtLeast(5, 1, 0))
          throw new MySqlException(Properties.Resources.FileBasedCertificateNotSupported);

        X509Certificate2 clientCert = new X509Certificate2(Settings.CertificateFile,
            Settings.CertificatePassword);
        certs.Add(clientCert);
        return certs;
      }

      if (Settings.CertificateStoreLocation == MySqlCertificateStoreLocation.None)
        return certs;

      StoreLocation location =
          (Settings.CertificateStoreLocation == MySqlCertificateStoreLocation.CurrentUser) ?
          StoreLocation.CurrentUser : StoreLocation.LocalMachine;

      // Check for store-based certificate
      X509Store store = new X509Store(StoreName.My, location);
      store.Open(OpenFlags.ReadOnly | OpenFlags.OpenExistingOnly);


      if (Settings.CertificateThumbprint == null)
      {
        // Return all certificates from the store.
        certs.AddRange(store.Certificates);
        return certs;
      }

      // Find certificate with given thumbprint
      certs.AddRange(store.Certificates.Find(X509FindType.FindByThumbprint,
                Settings.CertificateThumbprint, true));

      if (certs.Count == 0)
      {
        throw new MySqlException("Certificate with Thumbprint " +
           Settings.CertificateThumbprint + " not found");
      }
      return certs;
    }
开发者ID:jimmy00784,项目名称:mysql-connector-net,代码行数:50,代码来源:NativeDriver.cs

示例10: CopyTo_TooSmall

		public void CopyTo_TooSmall () 
		{
			X509Certificate[] array = new X509Certificate [1];
			X509CertificateCollection c = new X509CertificateCollection ();
			c.AddRange (range);
			c.CopyTo (array, 0);
		}
开发者ID:Profit0004,项目名称:mono,代码行数:7,代码来源:X509CertificateCollectionTest.cs

示例11: AddRange_CollectionNull

		public void AddRange_CollectionNull ()
		{
			X509CertificateCollection coll = null;
			X509CertificateCollection c = new X509CertificateCollection ();
			c.AddRange (coll);
		}
开发者ID:Profit0004,项目名称:mono,代码行数:6,代码来源:X509CertificateCollectionTest.cs

示例12: AddRange_Collection

		public void AddRange_Collection ()
		{
			X509CertificateCollection coll = new X509CertificateCollection (range);
			X509CertificateCollection c = new X509CertificateCollection ();

			c.AddRange (c);
			Assert.AreEqual (0, c.Count, "Self(none)");

			c.AddRange (coll);
			Assert.AreEqual (2, c.Count, "Range(a+b)");

			c.AddRange (coll);
			Assert.AreEqual (4, c.Count, "Duplicate(a+b)");

			c.Add (x509c);
			Assert.AreEqual (5, c.Count, "New(c)");

			// This leads to an infinite loop until the runtime throws an OutOfMemoryException
			//c.AddRange (c);
			//Assert.AreEqual (10, c.Count, "Self(double)");
		}
开发者ID:Profit0004,项目名称:mono,代码行数:21,代码来源:X509CertificateCollectionTest.cs

示例13: AddRange_ArrayNull

		public void AddRange_ArrayNull ()
		{
			X509Certificate[] array = null;
			X509CertificateCollection c = new X509CertificateCollection ();
			c.AddRange (array);
		}
开发者ID:Profit0004,项目名称:mono,代码行数:6,代码来源:X509CertificateCollectionTest.cs

示例14: AddRange_Array

		public void AddRange_Array ()
		{
			X509CertificateCollection c = new X509CertificateCollection ();

			c.AddRange (range);
			Assert.AreEqual (2, c.Count, "Range(a+b)");

			c.AddRange (range);
			Assert.AreEqual (4, c.Count, "Duplicate(a+b)");

			c.Add (x509c);
			Assert.AreEqual (5, c.Count, "New(c)");
		}
开发者ID:Profit0004,项目名称:mono,代码行数:13,代码来源:X509CertificateCollectionTest.cs

示例15: AddRange_Array

		public void AddRange_Array ()
		{
			X509CertificateCollection c = new X509CertificateCollection ();

			c.AddRange (range);
			AssertEquals ("Range(a+b)", 2, c.Count);

			c.AddRange (range);
			AssertEquals ("Duplicate(a+b)", 4, c.Count);

			c.Add (x509c);
			AssertEquals ("New(c)", 5, c.Count);
		}
开发者ID:jjenki11,项目名称:blaze-chem-rendering,代码行数:13,代码来源:X509CertificateCollectionTest.cs


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