У меня есть установщик wix, и я использую OpenFileDialog, чтобы позволить пользователю выбирать файлы, выбранные файлы должны быть сохранены в переменной сеанса для отображения в поле списка в установщике
Невозможно сохранить списокили массивы в переменной сеанса
OpenFileDialog
public static string[] ListFiles()
{
using (WinForms.OpenFileDialog file = new WinForms.OpenFileDialog())
{
//Allow to select multiple files
file.Multiselect = true;
//Allow to select only *.txt Files
file.Filter = "Only SQL files | *.sql";
//Show the Dialog box to selcet file(s)
file.ShowDialog();
//return input file names
return file.FileNames;
}
}
session["SQL_FILEPATH"] = ListFiles();
This line throws an exception as the session only allows string to be stored.
Элемент управления WiX
<Control Id="SqlFiles" Property="SQL_FILEPATH" Type="ListBox" X="20" Y="150" Width="200" Height="52" Sorted="yes">
<ListBox Property="SQL_FILEPATH">
<ListItem Text="[SQL_FILEPATH]" Value="[SQL_FILEPATH]"/>
</ListBox>
</Control>
В окне списка должны отображаться все выбранные имена файлов и их путь.