在使用 C# 为 azure 开发 .NET Core 时,在什么情况下应该使用CloudBlobClient(nuget: Microsoft.Azure.Storage.Blob) 与BlobClient(nuget: Azure.Storage.Blobs)。
是否可以只对一个进程执行WRITE,而对一个Excel文件执行许多读操作?我为此使用ExcelPackage(EPPlus)。
为了演示,我编写了两个控制台应用程序,一个用于迭代编写,另一个用于读取。同时运行它们会在任何一方导致故障。
写
// simply write to a column
var fileLocation = "D:\\Book.xlsx";
FileInfo fi = new FileInfo(fileLocation);
int i = 1;
while (1 == 1) //ALERT: an infinite loop!
{
using (ExcelPackage excelPackage = new ExcelPackage(fi))
{
ExcelWorksheet worksheet = excelPackage.Workbook.Worksheets["Sheet1"];
var row = worksheet.Row(2);
worksheet.Cells[$"A{i}"].Value = "Test " + i.ToString();
excelPackage.Save();
i++;
}
}
Run Code Online (Sandbox Code Playgroud)
读
//simply populate a list reading excel
var fileLocation = "D:\\Book.xlsx";
FileInfo fi = new FileInfo(fileLocation);
List<string> list = new List<string>();
ExcelWorksheet worksheet = …Run Code Online (Sandbox Code Playgroud) 我为每个循环使用两个来将值连接到一个变量,所以我可以在查找/替换方法中将值写入Word.我的问题是以下语法会将值写入控制台两次,以便将其写入控制台
Shirt - SH11
Hat - HA22
Socks - SO33
Shirt - SH11
Hat - HA22
Shirt - SH11
Run Code Online (Sandbox Code Playgroud)
我希望写入控制台的价值只是如下所示:
Shirt - SH11
Hat - HA22
Socks - SH11
Run Code Online (Sandbox Code Playgroud)
这是我的语法:
DataTable table = new DataTable();
table.Columns.Add("Name", typeof(string));
table.Columns.Add("ItemsSold", typeof(string));
table.Columns.Add("ItemIDs", typeof(string));
table.Rows.Add("James Jo", "Shirt; Hat; Socks;", "SH11; HA22; SO33");
var itemsSold = table.Rows[0].Field<string>("ItemsSold").Split(new string[] {"; "}, StringSplitOptions.RemoveEmptyEntries);
var ItemIDs = table.Rows[0].Field<string>("ItemIDs").Split(new string[] {"; "}, StringSplitOptions.RemoveEmptyEntries);
string displayformat = "";
foreach (string is in itemsSold)
{
foreach (string id in ItemIDs) …Run Code Online (Sandbox Code Playgroud)