小编Mos*_*afa的帖子

在FileUpload Control中获取文件的扩展名

目前我得到文件的文件扩展名,如:

string fileExt = System.IO.Path.GetExtension(filUpload.FileName);
Run Code Online (Sandbox Code Playgroud)

但是如果用户更改了文件的文件扩展名(例如用户可以将"test.txt"重命名为"test.jpg"),我就无法获得真正的扩展名.解决方案是什么?

asp.net file-upload

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

为什么我的SiteMapPath在Firefox中有"Skip Navigation Links"

我的主页顶部有一个站点地图,当我在Firefox中运行时,第一个节点是"Skip Navigation Links"那是什么?我怎么能摆脱那个?值得注意的是,这不是在IE中.

asp.net sitemappath

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

在sql server中保存代码片段

在互联网上有很多代码片段在文章或问答社区,如stackoverflow,值得保存,并在需要时引用它们.记住所有这些都是如此困难,所以我想知道SQL Server是否具有这样的功能以便在其上保存这些代码片段?

如果没有,您可能会想到其他解决方案怎么样?

谢谢

sql-server-2005 code-snippets

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

如果我将ValidateRequest设置为false,这不是危险的吗?

我在我的asp.net项目中的一些webforms中使用FreeTextBox HTML编辑器.如果我没有将ValidateRequest属性设置为false,我会收到此错误:

从客户端检测到潜在危险的Request.Form值

但是在管理文件夹中没问题,因为只有授权用户才有权使用它.但是公共页面怎么样,每个用户都可以访问的部分留下评论(使用FreeTextBox收集用户评论)?对XSS攻击没有风险吗?如果答案不是,那么ValidateRequest属性是什么?

asp.net xss validation freetextbox

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

批量生成随机密码

我使用此源代码生成随机密码:

public string GetRandomPasswordUsingGUID(int length)
{
    // Get the GUID
    string guidResult = System.Guid.NewGuid().ToString();

    // Remove the hyphens
    guidResult = guidResult.Replace("-", string.Empty);

    // Make sure length is valid
    if (length <= 0 || length > guidResult.Length)
        throw new ArgumentException("Length must be between 1 and " + guidResult.Length);

    // Return the first length bytes
    return guidResult.Substring(0, length).ToUpper();
}
Run Code Online (Sandbox Code Playgroud)

它在调用方法时工作正常,但不在"for"循环语句中.

在这种情况下,它会生成一些错误的重复密码.

例如像这样:

A4MNB597D7
AMGJCCC902
AWJ80CF6HX
A78EDJECIW
A78EDJECIW
A78EDJECIW
A78EDJECIW
A78EDJECIW
A2LYJCH23N
A2LYJCH23N
Run Code Online (Sandbox Code Playgroud)

如何在"For"循环语句中创建随机密码?

c# asp.net random passwords

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

类库项目中的扩展方法

我已经实现了一些扩展方法,并将它们放在单独的类库项目中.

想象一下,在类库MD.Utility中有一个像这样的简单扩展方法:

namespace MD.Utility
{
    public static class ExtenMethods
    {
        public static bool IsValidEmailAddress(this string s)
        {
            Regex regex = new Regex(@"^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$");
            return regex.IsMatch(s);
        }
    } 
}
Run Code Online (Sandbox Code Playgroud)

但是在WebApp中没有像App_code文件夹或WebFroms代码隐藏页面那样我无法使用这种扩展方法.如果我喜欢这样:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MD.Utility;

public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string email = "Someone@Somewhere.com";
        if (email.IsValidEmailAddress())
        {
            //To do 
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

编译器不识别IsValidEmailAddress(),甚至没有智能感知支持.

如果我将我的扩展方法放在App_Code文件夹中,则可以在App_code文件夹或Web窗体代码隐藏页面中的另一个cs文件中使用.

c# asp.net extension-methods class-library

3
推荐指数
1
解决办法
8309
查看次数

无法将类型'System.Data.Linq.ISingleResult <CustomeProcedureName>隐式转换为'int'

对不起这个简单的问题.

我有一个存储过程返回一个int值,我试图将这个sp从我的asp.net linq调用到sql项目.

int currentRating = db.sproc_GetAverageByPageId(pageId);
Run Code Online (Sandbox Code Playgroud)

但我得到这个错误:

Cannot implicitly convert type `'System.Data.Linq.ISingleResult<PsychoDataLayer.sproc_GetAverageByPageId> to 'int' .`
Run Code Online (Sandbox Code Playgroud)

编辑1 朋友暗示的解决方案不起作用.它一直返回0更多信息我把我的存储过程放在这里:

ALTER procedure [dbo].[sproc_GetAverageByPageId](
@PageId int )
as 
select (select sum(score) from votes where pageId = @PageId)/(select count(*) from votes where pageId=@PageId)
Run Code Online (Sandbox Code Playgroud)

linq asp.net types linq-to-sql

3
推荐指数
1
解决办法
9134
查看次数

从Entity Framework中的ObjectStateEntry获取所有键及其值

对于审计日志记录目的,我SaveChanges()在EF 4.1 Database-First方法中覆盖方法.

我有所有ObjectStateEntry对象,我想知道我是否可以从每个ObjectStateEntry获取所有键及其值.

   IEnumerable<ObjectStateEntry> changes = this.ObjectStateManager.GetObjectStateEntries(EntityState.Added | EntityState.Deleted | EntityState.Modified);
    foreach (ObjectStateEntry stateEntryEntity in changes)
    {
        if (!stateEntryEntity.IsRelationship &&
                stateEntryEntity.Entity != null &&
                    !(stateEntryEntity.Entity is DBAudit))
        {
          list<object , object> KeyValues = GetAllKeyValues(stateEntryEntity );
          //Do log all keyvalues
        }
    }
Run Code Online (Sandbox Code Playgroud)

c# audit entity-framework entity-framework-4.1 ef-database-first

3
推荐指数
1
解决办法
6255
查看次数

base.OnPreInit(e)是什么意思?

任何人都可以简单地告诉我什么base.OnPreInit(e)意思?

谢谢

asp.net events

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

asp.net C#中的非重复随机数

我在6个asp.net面板服务器控件中有6个问题,我需要以随机顺序逐个显示所有面板(一个问题是可见的,每次都是不可见的).

我不知道如何排除再次生成的数字.我这样写:

    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                Random rnd = new Random();
                int startNumber = rnd.Next(1, 6);
                ShowNextPanel(startNumber);
            }
        }

    private void ShowNextPanel(int excludeNumber)
    {
        Random rnd = new Random();
        //I need to exclude the "excludeNumber" here but I don't know how !?
        int number = rnd.Next(1, 6);
        switch (number)
        {
            case 1:
                {
                    Panel1.Visible = true;
                    break;
                }
            case 2:
                {
                    Panel2.Visible = true;
                    break;
                }
            case 3:
                {
                    Panel3.Visible = true;
                    break;
                } …
Run Code Online (Sandbox Code Playgroud)

c# asp.net random numbers

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