Я использую диаграммы из System.Web.DataVisualization.
<%@ Register Assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Namespace="System.Web.UI.DataVisualization.Charting" TagPrefix="asp" %>
...
<asp:Chart ImageType="Png" runat="server" ID="chartStatComp" Palette="BrightPastel"
ImageLocation="~/CRM/Reports/chartStatComp_#SEQ(100,10)" ImageStorageMode="UseImageLocation"
Width="620" Height="300">
<ChartAreas>
<asp:ChartArea Name="MainChartArea">
</asp:ChartArea>
</ChartAreas>
<Series>
<asp:Series ChartArea="MainChartArea" ChartType="Pie" XValueType="String" YValueType="Int32"
CustomProperties="DoughnutRadius=25, PieDrawingStyle=Concave, CollectedLabel=Other, MinimumRelativePieSize=20"
XValueMember="StateDescription" YValueMembers="CNT" Legend="Legend" IsVisibleInLegend="true"
IsValueShownAsLabel="true">
</asp:Series>
</Series>
<Legends>
<asp:Legend LegendStyle="Table" Name="Legend" Alignment="Near"
TitleAlignment="Near">
<CellColumns>
<asp:LegendCellColumn Text="Color" ColumnType="SeriesSymbol" />
<asp:LegendCellColumn Text="#LEGENDTEXT" ColumnType="Text" Alignment="TopLeft" HeaderText="State" />
<asp:LegendCellColumn Text="#VAL" ColumnType="Text" Name="Cnt" Alignment="TopLeft"
HeaderText="Count" />
<asp:LegendCellColumn Text="#PERCENT" ColumnType="Text" Name="Percentage" Alignment="TopLeft"
HeaderText="%" />
</CellColumns>
</asp:Legend>
</Legends>
</asp:Chart>
Это работает хорошо в большинстве случаевНо иногда пользователи получают исключение:
System.IO.IOException: The process cannot access the file '~\Reports\chartStatComp_000001.png' because it is being used by another process.
Это случается очень редко, но это происходит.Кто-нибудь сталкивался с подобной проблемой?