2017-07-19 2 views

Répondre

0

Vous pouvez ajouter des partitions comme des colonnes

  var ds = myDatabaseObject.Model.DataSources.Find("DW Connection"); 
      ds.Model.Tables.Add(new Table 
      { 
       Name = "tablename", 
       Columns = 
       { 
        new DataColumn 
        { 
         Name = "Id", 
         DataType = DataType.Int64, 
         SourceColumn = "Id", 
         SourceProviderType = "BigInt", 
         IsUnique = true, 
         IsKey = true 
        }, 
        new DataColumn 
        { 
         Name = "DateId", 
         DataType = DataType.DateTime, 
         SourceColumn = "DateId", 
         FormatString = "General Date", 
         SourceProviderType = "Date" 
        } 
        [...] 
       }, 
       Partitions = 
       { 
        new Partition 
        { 
         Name = "Main", 
         DataView = DataViewType.Full, 
         Source = new QueryPartitionSource 
         { 
          DataSource = ds, 
          Query = query 
         } 
        } 
        [...] 
       } 
      }); 

Ajouter ou supprimer des partitions n'est également pas un problème. Par exemple ceci est (plus ou moins) le code que je utilise pour ajouter des partitions avec de nouvelles données

 var partitionName = $"name of partition you want to add"; 
     var newDataPartition = new Partition 
     { 
      Name = partitionName, 
      DataView = DataViewType.Full, 
      Source = new QueryPartitionSource 
      { 
       DataSource = ds, 
       Query = "sql query here" 
      } 
     }; 

     if (!table.Partitions.ContainsName(partitionName)) 
     { 
      table.Partitions.Add(newDataPartition); 
     } 
     db.Update(UpdateOptions.ExpandFull); 
     table.Partitions[partitionName].RequestRefresh(RefreshType.Full); 
     table.Partitions["Main"].RequestMerge(new List<Partition> { table.Partitions[partitionName] }); 
     db.Model.SaveChanges(); 
+0

Merci beaucoup pour la mise à jour maintenant, nous devons mettre en œuvre en utilisant la fonction Azure App – user3843858

+0

salut, s'il vous plaît partager le code avec le nom complet l'espace ça ne marche pas pour moi – user3843858

+0

Je ne peux pas partager le code complet. Les services d'analyse Azure requièrent des DLL pouvant fonctionner avec la compatibilité de modèle d'objet tabulaire 1200 et supérieur. Fondamentalement, vous avez besoin de DLL à partir du serveur SQL 2016 ou supérieur. Recherchez Microsoft.AnalysisServices.AdomdClient.dll, Microsoft.AnalysisServices.Core.dll et Microsoft.AnalysisServices.Tabular.dll. – RassaR