如何对通用列表DESC和ASC进行排序?使用LINQ而不使用LINQ?我正在使用VS2008.
class Program
{
static void Main(string[] args)
{
List<int> li = new List<int>();
li.Add(456);
li.Add(123);
li.Add(12345667);
li.Add(0);
li.Add(1);
li.Sort();
foreach (int item in li)
{
Console.WriteLine(item.ToString() + "\n");
}
Console.ReadKey();
}
}
Run Code Online (Sandbox Code Playgroud) 我正在使用以下代码行Image从文件中打开:
pictureBox1.Image = Image.FromFile("test.png");
Run Code Online (Sandbox Code Playgroud)
我希望它能锁定文件,将图像加载到内存中,设置pictureBox1.Image为内存中的副本,然后释放锁定.在现实中,锁不会消失,直到我Dispose()的Image记忆.我无法释放我不再使用的硬盘上的文件锁,直到我删除了我正在使用的内存中的文件.
微软的网站在一篇带有C#标签的文章中提及它,但他们的解决方案是用visual basic编写的,这对我来说毫无用处.
总结:我想设置pictureBox1.Image存储的图像"test.png",然后让用户编辑或删除"test.png"或其他.
我想使用属性值数组过滤集合.给定一组ID,返回具有匹配ID的对象.是否有使用lodash/的快捷方法underscore?
var collections = [{ id: 1, name: 'xyz' },
{ id: 2, name: 'ds' },
{ id: 3, name: 'rtrt' },
{ id: 4, name: 'nhf' },
{ id: 5, name: 'qwe' }];
var ids = [1,3,4];
// This works, but any better way?
var filtered = _.select(collections, function(c){
return ids.indexOf(c.id) != -1
});
Run Code Online (Sandbox Code Playgroud) 我想动态获取ASP.NET应用程序的绝对根URL.这需要是以下形式的应用程序的完整根URL:http(s):// hostname(:port)/
我一直在使用这种静态方法:
public static string GetSiteRootUrl()
{
string protocol;
if (HttpContext.Current.Request.IsSecureConnection)
protocol = "https";
else
protocol = "http";
StringBuilder uri = new StringBuilder(protocol + "://");
string hostname = HttpContext.Current.Request.Url.Host;
uri.Append(hostname);
int port = HttpContext.Current.Request.Url.Port;
if (port != 80 && port != 443)
{
uri.Append(":");
uri.Append(port.ToString());
}
return uri.ToString();
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我没有HttpContext.Current范围怎么办?我遇到过这样的情况CacheItemRemovedCallback.
我在WCF中创建了一个Web服务,它返回超过54000个数据行,每行有10个数据.我使用wsHttpBinding进行通信.该服务适用于较少的数据(即2000行)但在尝试发送50000+行(~2MB)的大型记录集时会爆炸.异常消息是这样的
收到HTTP响应时发生错误
http://localhost:9002/MyService.svc.这可能是由于服务端点绑定不使用HTTP协议.这也可能是由于服务器中止HTTP请求上下文(可能是由于服务关闭).请参阅服务器日志以获取更多详
请不要告诉我在客户端使用分页 - 我知道它会解决问题.但我需要客户端的整个数据块.
我在服务器上的服务配置是
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="MyWsHttpBinding" />
</wsHttpBinding>
</bindings>
<services>
<service name="AdminService">
<endpoint address="AdminSrv"
binding="wsHttpBinding"
contract="IAdminService"/>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="/Bus/IRfotoWCF" />
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior>
<!-- To avoid disclosing metadata information,
set the value below to false and remove the metadata endpoint above before deployment -->
<serviceMetadata httpGetEnabled="True"/>
<!-- To receive exception details in faults for debugging purposes,
set the value below to …Run Code Online (Sandbox Code Playgroud) 如何检查是否DataGridView包含"x"列和"x"列?
到目前为止我所有的一切都在下面.
if (Dgv.Columns.Contains("Address") & ....
Run Code Online (Sandbox Code Playgroud)
谢谢
我想编辑DataGridWPF中的单元格样式.所以使用Expression Blend我右转到 - 对象和时间轴>> DataGrid >>编辑其他模板>>编辑CellStyle >>编辑副本
这是页面上显示的内容:
<SolidColorBrush x:Key="{x:Static DataGrid.FocusBorderBrushKey}" Color="#FF000000"/>
<Style x:Key="DataGridCellStyle1" TargetType="{x:Type DataGridCell}">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="BorderBrush" Value="Transparent"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type DataGridCell}">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" SnapsToDevicePixels="True">
<ContentPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}"/>
<Setter Property="BorderBrush" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/>
</Trigger>
<Trigger Property="IsKeyboardFocusWithin" Value="True">
<Setter Property="BorderBrush" Value="{DynamicResource {x:Static DataGrid.FocusBorderBrushKey}}"/>
</Trigger>
</Style.Triggers>
</Style>
Run Code Online (Sandbox Code Playgroud)
但我只想改变填充和背景.相反,它给了我25行代码,包括单元格模板!我错过了什么,有没有更好的方式来设计这样的项目,而不必在我只想更改两个项目时带来如此多的额外不必要的代码?
我有一个XElement看起来像这样:
<row flag="1" sect="" header="" body="" extrainfo="0" />
Run Code Online (Sandbox Code Playgroud)
然后我有一个看起来像这样的课:
public class ProductAttribute
{
public string Flag { get; set; }
public string Sect { get; set; }
public string Header { get; set; }
public string Body { get; set; }
public string Extrainfo { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
如何将其XElement转换为ProductAttribute对象?
谁能帮助我知道如何获得Windows服务的PID?
我需要获取PID才能运行以下命令:
Process.Start(new ProcessStartInfo
{
Filename = "cmd.exe",
CreateNoWindow = true,
UseShellExecute = false,
Arguments = string.Format("/c taskkill /pid {0} /f", pidnumber)
});
Run Code Online (Sandbox Code Playgroud) 我有一个电子表格文档,其中包含182列.我需要将电子表格数据放在数据表中,逐个标签,但我需要找出,因为我正在添加每个选项卡中的数据,选项卡名称是什么,并将选项卡名称添加到数据表中的列.
这就是我设置数据表的方法.
然后我循环进入工作簿并深入到sheetData对象并遍历每一行和每列,获取单元格数据.
DataTable dt = new DataTable();
for (int i = 0; i <= col.GetUpperBound(0); i++)
{
try
{
dt.Columns.Add(new DataColumn(col[i].ToString(), typeof(string)));
}
catch (Exception e)
{
MessageBox.Show("Uploader Error" + e.ToString());
return null;
}
}
dt.Columns.Add(new DataColumn("SheetName", typeof(string)));
Run Code Online (Sandbox Code Playgroud)
但是,在我用于数据表的字符串数组的末尾,我需要添加选项卡名称.当我在Open XML中的表格中循环时,如何找到选项卡名称?
到目前为止,这是我的代码:
using (SpreadsheetDocument spreadSheetDocument =
SpreadsheetDocument.Open(Destination, false))
{
WorkbookPart workbookPart = spreadSheetDocument.WorkbookPart;
Workbook workbook = spreadSheetDocument.WorkbookPart.Workbook;
Sheets sheets =
spreadSheetDocument
.WorkbookPart
.Workbook
.GetFirstChild<DocumentFormat.OpenXml.Spreadsheet.Sheets>();
OpenXmlElementList list = sheets.ChildElements;
foreach (WorksheetPart worksheetpart in workbook.WorkbookPart.WorksheetParts)
{
Worksheet worksheet = worksheetpart.Worksheet; …Run Code Online (Sandbox Code Playgroud) c# ×7
.net ×4
winforms ×2
asp.net ×1
datagridview ×1
excel ×1
image ×1
linq ×1
linq-to-xml ×1
locking ×1
lodash ×1
openxml ×1
openxml-sdk ×1
wcf ×1
wcf-binding ×1
wpf ×1
xaml ×1
xelement ×1
xml ×1