小编hja*_*her的帖子

URL.Action()包括路由值

我有一个ASP.Net MVC 4应用程序,我正在使用这样的Url.Action助手: @Url.Action("Information", "Admin")

此页面用于添加新的和编辑管理员配置文件.URL如下:

 Adding a new:       http://localhost:4935/Admin/Information
 Editing Existing:   http://localhost:4935/Admin/Information/5 <==Admin ID
Run Code Online (Sandbox Code Playgroud)

当我在Editing Existing网站的部分,并决定我想添加一个新的管理员时,我点击以下链接:

 <a href="@Url.Action("Information", "Admin")">Add an Admin</a>
Run Code Online (Sandbox Code Playgroud)

但问题是上面的链接实际上是这样的http://localhost:4935/Admin/Information/5.只有在我编辑现有管理员的页面时才会发生这种情况.网站上的其他任何地方都能正确链接到http://localhost:4935/Admin/Information

有没有人见过这个?

更新:

RouteConfig:

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );    
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc html-helper asp.net-mvc-4

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

Azure Blob 400关于创建容器的错误请求

我正在开发一个ASP.Net MVC 4应用程序,我正在使用Azure Blob来存储我的用户要上传的图像.我有以下代码:

 var storageAccount = CloudStorageAccount.Parse(ConfigurationManager.ConnectionStrings["StorageConnection"].ConnectionString);

 var blobStorage = storageAccount.CreateCloudBlobClient();
 //merchantKey is just a GUID that is asociated with the merchant
 var containerName = ("ImageAds-" + merchant.merchantKey.ToString()).ToLower();
 CloudBlobContainer container = blobStorage.GetContainerReference(containerName);
 if (container.CreateIfNotExist())
    {
       //Upload the file
    } 
Run Code Online (Sandbox Code Playgroud)

一旦if语句被删除,我就会收到以下异常:

  {"The remote server returned an error: (400) Bad Request."}
Run Code Online (Sandbox Code Playgroud)

我以为这是容器的名称,但我没有看到任何错误.连接字符串似乎创建了一个包含blob所有详细信息的良好存储空间.我不知所措.我研究了网络,每个人都说这是一个命名问题,但我发现它没有任何问题.

我使用的测试容器名称: imageads-57905553-8585-4d7c-8270-be9e611eda81

Container有以下uri: {http://127.0.0.1:10000/devstoreaccount1/imageads-57905553-8585-4d7c-8270-be9e611eda81}

更新: 我已将容器名称更改为just image,我仍然得到相同的异常.开发连接字符串如下:<add name="StorageConnection" connectionString="UseDevelopmentStorage=true" />

azure blobstorage azure-storage azure-storage-blobs asp.net-mvc-4

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

重构库是异步的,我怎么能避免重复自己?

我有一个像这样的方法:

    public void Encrypt(IFile file)
    {
        if (file == null)
            throw new ArgumentNullException(nameof(file));

        string tempFilename = GetFilename(file);
        using (var stream = new FileStream(tempFilename, FileMode.OpenOrCreate))
        {
            this.EncryptToStream(file, stream);
            file.Write(stream);
        }

        File.Delete(tempFilename);
    }
Run Code Online (Sandbox Code Playgroud)

但是,我想要编写另一个非常相似的方法,但它会调用WriteAsync,例如:

    public async Task EncryptAsync(IFile file)
    {
        if (file == null)
            throw new ArgumentNullException(nameof(file));

        string tempFilename = GetFilename(file);
        using (var stream = new FileStream(tempFilename, FileMode.OpenOrCreate))
        {
            this.EncryptToStream(file, stream);
            await file.WriteAsync(stream);
        }

        File.Delete(tempFilename);
    }
Run Code Online (Sandbox Code Playgroud)

但是,我不喜欢有两种方法实际上重复代码.我怎么能避免这个?正确的方法感觉我应该使用Action/Delegate,但签名是不同的....

思考?

.net c# asynchronous dry

13
推荐指数
1
解决办法
516
查看次数

C中的堆栈溢出漏洞利用

问题实际上是关于C中的堆栈溢出.我有一个不能完成我的生活的分配,我已经查看了gdb中的所有内容,我只是无法想象它.

问题如下:

int i,n;

void confused()
{
    printf("who called me");
    exit(0);
}

void shell_call(char *c)
{
    printf(" ***Now calling \"%s\" shell command *** \n",c);
    system(c);
    exit(0);
}

void victim_func()
{
    int a[4];
    printf("[8]:%x\n", &a[8]);
    printf("Enter n: "); scanf("%d",&n);
    printf("Enter %d HEX Values \n",n);
    for(i=0;i<n;i++) scanf("%x",&a[i]);
    printf("Done reading junk numbers\n");
}

int main()
{
    printf("ls=736c --- ps = 7370 --- cal = 6c6163\n");
    printf("location of confused %x \n", confused);
    printf("location of shell_call %x \n", shell_call);
    victim_func();
    printf("Done, thank you\n");

}
Run Code Online (Sandbox Code Playgroud)

好的,所以我设法正确地得到了第一个问题,即任意调用主路径中未明确调用的两个函数之一.顺便说一下,这必须在运行程序时完成而不做任何修改.我这样做是通过运行程序,设置 …

c stack-overflow exploit buffer-overflow

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

ASP.Net MVC 4我需要延迟执行

我有一个ASP.Net MVC 4应用程序,它定期调用外部API来获取信息(资源).此资源具有帐户的速率限制器(意味着其他应用程序使用相同的池并可能达到限制).当达到此限制时,它将以秒为单位发回一个标题为"Retry-After"的HTTP状态代码429(比方说25秒).

如果我的应用程序得到此响应,我将需要延迟执行25秒并重试.首先,让我说这个代码运行的方法是一个ASP.Net 4.5异步方法.为此,我正在考虑使用System.Threading.Thread.Sleep(25000)Now,我真的不喜欢使用它,有没有更好的方法呢?

我不得不说我为这个开放式问题道歉,但我找不到任何正确的延迟执行方式(同时保持异步并确保我们不会耗尽线程)

更新: 以下代码是否会更好地延迟?

  await Task.Run(() => Thread.Sleep(10000))
Run Code Online (Sandbox Code Playgroud)

.net c# async-await asp.net-mvc-4 asp.net-4.5

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

如何在Swift中创建圆形轮廓图像或圆角图像,边框不会泄漏?

基于以下源代码:

    @IBOutlet var myUIImageView: UIImageView!

    override func viewDidLoad() {
        super.viewDidLoad()
        self.makingRoundedImageProfileWithRoundedBorder()
    }

    private func makingRoundedImageProfileWithRoundedBorder() {    
        // Making a circular image profile.
//        self.myUIImageView.layer.cornerRadius = self.myUIImageView.frame.size.width / 2
        // Making a rounded image profile.
        self.myUIImageView.layer.cornerRadius = 20.0

        self.myUIImageView.clipsToBounds = true

        // Adding a border to the image profile
        self.myUIImageView.layer.borderWidth = 10.0
        self.myUIImageView.layer.borderColor = UIColor.whiteColor().CGColor
    }
Run Code Online (Sandbox Code Playgroud)

事实上,我能够呈现圆形或圆形UIImageView,但问题是如果我们添加边框,图像会有点泄漏.使用圆形UIImageView会更糟糕,只要边框弯曲,它就会泄漏,因此无论如何都会泄漏!您可以在下面找到结果的屏幕截图:

UIImageView呈现

有什么方法可以解决这个问题吗?任何回答此问题的示例代码都将受到高度赞赏.

注意:解决方案必须尽可能与iOS 7和8+兼容.

objective-c rounded-corners uiimageview ios swift

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

我可以使用react native来使用Django rest api构建移动应用程序吗?

我是天才的新手.最近我正在考虑构建一个跨平台的移动应用程序.我已经在Django中开发后端rest API了.在这种情况下是否可以使用本机反应?如果没有,我的其他选择会是什么?

react-native

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

更改现有Bigcommerce应用的范围

我们正在努力更新Bigcommerce应用(之前提交并且目前正在使用).碰巧我们需要修改所需的范围(我们现在需要访问产品).

一旦更改,我们的应用程序是否会进入待定模式并需要重新提交?会有停工时间吗?如果是这样,安装了应用程序的当前用户会发生什么情况,他们是否能够使用使用我们已拥有权限的范围的应用程序部分?

此外,当下次尝试启动我们的应用程序时,是否会提示当前客户批准新范围?怎么做的?

bigcommerce

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

为通用链接配置 Xamarin.Forms iOS 应用程序?

我正在遵循这些说明。该应用程序是 Xamarin.Forms iOS 应用程序。

https://xamarinhelp.com/ios-universal-links/

这是我不确定的。

首先,我将一个众所周知的文件夹添加到我的 MVC 5 Web 应用程序中。我无法添加 .wellknown 文件夹。因为我无法添加“。” 在该文件夹前面,我使用 Azure 门户添加了一个虚拟目录。

在此输入图像描述

当我尝试使用https://portal.mydomain.com/.well-known/apple-app-site-association访问该文件时,我收到以下消息。

“您要查找的资源已被删除、更名或暂时不可用。”

其次,我必须使用 XML 文本编辑器编辑 Entitlements.plist。这是我的条目的样子。

<plist version="1.0">
 <dict>
  <key>com.apple.developer.associated-domains</key>
  <array>
    <string>applinks: portal.mydomain.com</string>
    <!--<string>your domain</string>-->
  </array>
 </dict>
</plist>
Run Code Online (Sandbox Code Playgroud)

接下来,这是ContinueUserActivity 和OpenUrl 的样子。

//AppLinks应用程序运行

public override bool ContinueUserActivity(UIApplication application, NSUserActivity userActivity, UIApplicationRestorationHandler completionHandler)
    {
        try
        {

            if (userActivity.ActivityType == "NSUserActivityTypeBrowsingWeb")
            {
                if (userActivity.WebPageUrl.AbsoluteString.Contains("/PublicOffers/OffersPage"))
                {

                    ((App)Xamarin.Forms.Application.Current).AppLinkRequest(new
                    Uri(userActivity.WebPageUrl.AbsoluteString));
                    return true;
                }

            }

        }
        catch
        {
            // Ignore issue for now
        }

        return base.ContinueUserActivity(application, userActivity, completionHandler);
    }
Run Code Online (Sandbox Code Playgroud)

//AppLinks应用程序未运行 …

xamarin.ios xamarin.forms ios-universal-links

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

带有 slurm 的 kubernetes,这是正确的设置吗?

我看到有些人使用 Kubernetes 与 slurm 共存,我只是好奇你为什么需要 slurm 的 kubernetes?kubernetes 和 slurm 之间的主要区别是什么?

containers hpc slurm kubernetes

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