小编Cer*_*rus的帖子

如何在查询字符串中传递多个参数

我有三个值,我必须作为参数传递给,例如strID,strNamestrDate.

我想将这三个参数重定向到另一个页面Response.Redirect().可以任何人为我提供正确的查询字符串吗?

asp.net query-string

79
推荐指数
5
解决办法
37万
查看次数

"删除未使用的引用"的目的是什么

我已经读过删除未使用的引用对编译器没有任何影响,因为它忽略了代码本身没有引用的程序集.

但我觉得很难相信,因为那么,删除未使用的引用的真正目的是什么?它对生成的组件的大小或其他方面没有任何明显的影响.或者这种智能行为仅限于C#编译器(csc.exe)而不是vbc.exe固有的?

如果此功能如此无用,为什么ReSharper将其作为功能提供?为什么在Visual Studio项目配置对话框中提供它?

我能想到的唯一有用的活动是在部署期间.安装程序仍会复制引用(已使用或未使用).但对于驻留在GAC中的程序集(例如,BCL程序集),这也不是问题.

.net compiler-construction reference visual-studio

12
推荐指数
4
解决办法
3927
查看次数

如何区分同一对象的两个版本?

我想比较两个不同版本的对象,并在UI中显示它们的差异.

首先,我调用一个方法来了解这两个对象之间是否存在任何差异

方法是:

public bool AreEqual(object object1,object object2, Type comparisionType)
Run Code Online (Sandbox Code Playgroud)

如果上面的方法返回true,我调用GetDifferences方法来获得以下差异:

public ObjectDifference[] GetObjectDifferences(object object1, object object2, Type comparisionType)
{
  ArrayList memberList = new ArrayList();
  ArrayList differences = new ArrayList();

  memberList.AddRange(comparisionType.GetProperties());
  memberList.AddRange(comparisionType.GetFields());

  for (int loopCount = 0; loopCount < memberList.Count; loopCount++)
  {
    object objVal1 = null;
    object objVal2 = null;
    MemberInfo member = ((MemberInfo)memberList[loopCount]);
    switch (((MemberInfo)memberList[loopCount]).MemberType)
    {
      case MemberTypes.Field:
        objVal1 = object1 != null ? ((FieldInfo)memberList[loopCount]).GetValue(object1) : null;
        objVal2 = object2 != null ? ((FieldInfo)memberList[loopCount]).GetValue(object2) : null;
        break; …
Run Code Online (Sandbox Code Playgroud)

c# comparison diff object hierarchy

8
推荐指数
1
解决办法
955
查看次数

如何使用winforms从网上下载显示下载进度的图像?

我使用WebRequest以这种方式异步下载URL中的图像:

public void Download(string url)
{   
  byte[] buffer = new byte[0x1000];
  WebRequest request = HttpWebRequest.Create(url);
  request.Method = "GET";
  request.ContentType = "image/gif";

  request.BeginGetResponse(result =>
  {
    WebRequest webRequest = result.AsyncState as WebRequest;

    WebResponse response = webRequest.EndGetResponse(result);
    ReadState readState = new ReadState()
    {
      Response = response.GetResponseStream(),
      AccumulatedResponse = new MemoryStream(),
      Buffer = buffer,
    };

    readState.Response.BeginRead(buffer, 0,
      readState.Buffer.Length, ReadCallback, readState);
  }, request);
}

public void ReadCallback(IAsyncResult result)
{
  ReadState readState = result.AsyncState as ReadState;
  int bytesRead = readState.Response.EndRead(result);
  if(bytesRead > 0)
  {
    readState.AccumulatedResponse.BeginWrite(readState.Buffer, 0, …
Run Code Online (Sandbox Code Playgroud)

c# image httpwebrequest winforms

8
推荐指数
2
解决办法
3581
查看次数

在ASP.NET中缓存用户控件?

我在我的应用程序"header.ascx"中创建了一个用户控件,我将一个selectedMenu属性设置为此控件,控件在该控件上选择指定的selectedMenu值.假设,我已经通过了值"home"或"search",那么它将选择(突出显示)搜索菜单.

我想缓存这个控件,当selectedMenu属性的值发生变化时,只刷新缓存,否则它应该从缓存中获取控件?

是否可以在asp.net中缓存用户控件?我使用的是ASP.NET 2.0(C#)

c# asp.net user-controls caching asp.net-2.0

7
推荐指数
2
解决办法
1万
查看次数

XML中的方括号?

在XML文档中,如何处理方括号(]或[)?

xml escaping special-characters

7
推荐指数
2
解决办法
1万
查看次数

asp.net中的货币格式字符串

我使用的是infragistics webgrid,需要格式化货币字符串.为此我需要一个包含模式的字符串,例如"$ ### ###,00",我希望这可以从我目前的CultureInfo中找到.我怎样才能做到这一点?我是否需要从以下信息中手动撰写:

CultureInfo.CreateSpecificCulture(myLanguageId).NumberFormat.CurrencyGroupSeparator
CultureInfo.CreateSpecificCulture(myLanguageId).NumberFormat.CurrencyGroupSizes
CultureInfo.CreateSpecificCulture(myLanguageId).NumberFormat.CurrencyDecimalDigits
CultureInfo.CreateSpecificCulture(myLanguageId).NumberFormat.CurrencyDecimalSeparator
Run Code Online (Sandbox Code Playgroud)

等等

这是单线解决方案吗?

c# asp.net currency cultureinfo

7
推荐指数
2
解决办法
4万
查看次数

如何在从String加载XSL的Transformation中解析XSL包含?

.NET 2.0/VS2005

我正在尝试使用XslCompiledTransform该类来执行XSL转换.我有两个XSL文件,第一个包含对<xsl:include>语句形式的引用:

Main.xsl:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:include href="Included.xsl" />
  ...
  ...
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)

现在,如果我可以将"Main.xsl"文件本身作为URI加载,我的转换代码就像下面这样简单:

// This is a function that works. For demo only.
private string Transform(string xslFileURI)
{
  XslCompiledTransform xslt = new XslCompiledTransform();

  // This load works just fine, if I provide the path to "Main.xsl".
  // The xsl:include is automatically resolved.
  xslTransform.Load(xslFileURI);

  StringWriter sw = new StringWriter();
  xslt.Transform(Server.MapPath("~/XML/input.xml"), null, sw);
  return sw.ToString();
}
Run Code Online (Sandbox Code Playgroud)

问题是我收到Main.xsl文件的内容为字符串,需要加载字符串作为XmlReader/IXpathNavigable.这是此时的必要限制.当我尝试使用a执行相同操作时XmlReader/XpathDocument,它会失败,因为代码在C:\Program Files\Microsoft Visual Studio …

c# xslt include xslcompiledtransform .net-2.0

6
推荐指数
2
解决办法
1万
查看次数

为什么我的XML验证失败了它的架构?

我需要针对模式验证XML文件.XML文件是在代码中生成的,在我保存之前,我需要验证它是否正确.

我已经把问题解决了它最简单的元素,但我遇到了问题.

XML:

<?xml version="1.0" encoding="utf-16"?>
<MRIDSupportingData xmlns="urn:GenericLabData">
  <MRIDNumber>MRIDDemo</MRIDNumber>
  <CrewMemberIdentifier>1234</CrewMemberIdentifier>
  <PrescribedTestDate>1/1/2005</PrescribedTestDate>
</MRIDSupportingData>
Run Code Online (Sandbox Code Playgroud)

架构:

<?xml version="1.0" encoding="utf-16"?>
<xs:schema xmlns="urn:GenericLabData" targetNamespace="urn:GenericLabData" 
   xmlns:xs="http://www.w3.org/2001/XMLSchema">

   <xs:element name="MRIDSupportingData">
   <xs:complexType> 
      <xs:sequence>
        <xs:element name="MRIDNumber" type="xs:string" /> 
        <xs:element minOccurs="1" name="CrewMemberIdentifier" type="xs:string" />
      </xs:sequence>
   </xs:complexType>
  </xs:element>
</xs:schema>  
Run Code Online (Sandbox Code Playgroud)

ValidationCode :(这段代码来自我编写的一个简单的应用程序来测试验证逻辑.XML和XSD文件存储在磁盘上并从那里读取.在实际的应用程序中,XML文件已经作为XmlDocument存储在内存中对象和XSD将从内部Web服务器读取.)

private void Validate()
{
  XmlReaderSettings settings = new XmlReaderSettings();
  settings.ValidationType = ValidationType.Schema;
  //settings.ValidationFlags |= XmlSchemaValidationFlags.ProcessInlineSchema;
  //settings.ValidationFlags |= XmlSchemaValidationFlags.ProcessSchemaLocation;
  //settings.ValidationFlags |= XmlSchemaValidationFlags.ReportValidationWarnings;
  settings.ValidationEventHandler += new ValidationEventHandler(OnValidate);

  XmlSchemaSet schemas = new XmlSchemaSet();
  settings.Schemas = schemas;
  try
  {
    schemas.Add(null, schemaPathTextBox.Text);
    using (XmlReader reader = …
Run Code Online (Sandbox Code Playgroud)

c# xml validation xsd

5
推荐指数
1
解决办法
1万
查看次数

Repeater中的用户控件

我有一个提供投票按钮的用户控件(对于SO类型的投票模型) - 它包含一个保留记录ID的私有int成员.在转发器之外,它的功能很好 - 回发工作,并且正确的id保留在用户控件中.

在转发器内部,itemdatabound事件处理程序将正确的ID与usercontrol关联,并且它可以正常工作 - 从数据库中显示正确的投票计数.但是,当按下其中一个投票按钮时,它会触发对用户控件的回发,并且控件已丢失其私有int成员的内容,因此它不再起作用.

我已经尝试在回发时重新数据绑定usercontrol,并仅在初始加载时绑定它 - 问题是两种方式相同.

如何让usercontrol在回发中保留该int的值?

c# asp.net user-controls postback repeater

4
推荐指数
1
解决办法
1377
查看次数