相关疑难解决方法(0)

在代码隐藏中获取ASP.Net页面的URL

我有一个ASP.Net页面,它将托管在几个不同的服务器上,我想获取页面的URL(甚至更好:托管页面的站点)作为在代码隐藏中使用的字符串.有任何想法吗?

asp.net

193
推荐指数
7
解决办法
34万
查看次数

获取URL的一部分(正则表达式)

给定URL(单行):http:
//test.example.com/dir/subdir/file.html

如何使用正则表达式提取以下部分:

  1. 子域(测试)
  2. 域名(example.com)
  3. 没有文件的路径(/ dir/subdir /)
  4. 文件(file.html)
  5. 文件的路径(/dir/subdir/file.html)
  6. 没有路径的URL(http://test.example.com)
  7. (添加您认为有用的任何其他内容)

即使我输入以下URL,正则表达式也应该正常工作:

http://example.example.com/example/example/example.html
Run Code Online (Sandbox Code Playgroud)

regex language-agnostic url

127
推荐指数
11
解决办法
21万
查看次数

在WCF REST服务中获取原始请求URL

我要在我的WCF rest webservice中检索原始请求URL.现在我的代码看起来像这样:

public class MyServiceAuthorizationManager : ServiceAuthorizationManager
{
    protected override bool CheckAccessCore(OperationContext operationContext)
    {
        base.CheckAccessCore(operationContext);

        var url = operationContext.IncomingMessageProperties.Via.OriginalString;
        ...
Run Code Online (Sandbox Code Playgroud)

web.config中

<system.serviceModel>
  <serviceHostingEnvironment aspNetCompatibilityEnabled="true"/>
      <standardEndpoints> 
         <webHttpEndpoint>
             <standardEndpoint name="" helpEnabled="true" automaticFormatSelectionEnabled="true"/>
      </webHttpEndpoint>
    </standardEndpoints>
  </system.serviceModel>
Run Code Online (Sandbox Code Playgroud)

如果我的原始网址是

http://192.168.1.100:8081/test

这段代码返回

HTTP://主机名:8081 /测试

有没有办法检索确切的原始请求网址?

注意

我在web.config中找到了关于cutomize"baseAddress"标签的帖子,但是我的扩展名webservice没有特定的端点,我不想添加它.我不知道是否有办法在没有端点的情况下做到这一点.

我发现这篇文章 /sf/answers/414099941/与System.Net.HttpRequestHeader.Host一起播放,但是端口号不起作用!我知道我可以解析提供的URL并进行替换但是......我不认为这是实现此目的的最佳实践.

c# rest web-services

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

在服务器端使用url hash获取当前页面的完整URL

我无法得到我正在处理的页面的完整网址.这是我想要获取的网址http://localhost:54570/Shipment/ShipmentDetails.aspx?HawbBLNo=NEC00000004#BFT结果仅适用http://local/Shipment/ShipmentDetails.aspx?HawbBLNo=NEC00000004于此代码

protected void btnSave_Click(object sender, EventArgs e)
{
    url = HttpContext.Current.Request.Url.AbsoluteUri;
    UpdateDetails();
    Response.Redirect(url);
}
Run Code Online (Sandbox Code Playgroud)

c# asp.net url

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

如何获取当前网址

可能重复:
如何在C#中获取当前页面的URL

如果我在页面中说http://myweb/folder/obtain.aspx?thevalue=3,我怎样才能确定网址是否包含obtain.aspx?thevalue在c#中?我只需要检查用户是否登陆此特定页面.

PS:我想我真的不需要检查,?thevalue但只是obtain.aspx

c# asp.net

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

无法将CSS应用于html字符串

我想在我的asp.net应用程序上集成evoPDF.我通过ajax从我的html文件中发送部分html.一切都有效,直到这一部分.现在,当我从EvoPdf API调用这些方法时.

 1. GetPdfBytesFromHtmlStream(Stream, Encoding,urlbase)

 2. SavePdfFromHtmlStringToFile(String html,string filename,urlbase)
Run Code Online (Sandbox Code Playgroud)

我发送的html块就像是

 <ol class = "lol">
         <li> HEY </li>
         <li> Now </li>

  </ol>
Run Code Online (Sandbox Code Playgroud)

外部文件中的Css就像

 .lol {

      background-color: red;

  }
Run Code Online (Sandbox Code Playgroud)

根据文档,第三个参数必须是原始Html的完整URL,你提取html的大块.我上传了我的应用程序,因为尝试localhost/3232不起作用.但是,我看不到在生成的Html中应用任何CSS.在文档中,他们还建议追加

       <HEAD> <BASE HREF="full url to your html file"> </HEAD>
Run Code Online (Sandbox Code Playgroud)

并且,使用此方法.

        pdfConverter.GetPdfBytesFromHtmlString(String html);
Run Code Online (Sandbox Code Playgroud)

我上面尝试的任何内容都不适用CSS.有什么想法吗....

html css c# asp.net evopdf

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

状态代码:404,原因短语:“未找到”,版本:1.1,

我使用 Web api 自主机:

public class TestController : ApiController
{
    [HttpPost]
    public void Testp([FromBody]string title)
    {
        Console.WriteLine("Post");
    }
}
Run Code Online (Sandbox Code Playgroud)

这是一个简单的控制器,这是我的客户:

client.BaseAddress = new Uri("http://localhost:1010");
      const string englishTitle = "TesteDelete";
      var post = client.PostAsync("Test/Testp", new
      {
                    title = englishTitle
                }, new JsonMediaTypeFormatter());
                var result = post.Result;
                if (result.IsSuccessStatusCode)
                {

                }
                else
                {
                    string content = result.Content.ReadAsStringAsync().Result;

                }
Run Code Online (Sandbox Code Playgroud)

为什么我的结果是:

{StatusCode: 404, ReasonPhrase: 'Not Found', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
{
  Date: Sun, 21 Apr 2013 12:00:03 GMT
  Server: Microsoft-HTTPAPI/2.0
  Content-Length: 165
  Content-Type: …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-web-api

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

检索域名网址

我想在asp.net中检索我的域名网址.

例如,如果我的网址是:

http://www.mydomain.com/blog/currentPage.aspx?id=156
Run Code Online (Sandbox Code Playgroud)

我只想要这个部分

http://www.mydomain.com/blog/
Run Code Online (Sandbox Code Playgroud)

谁能帮我吗?

c# asp.net url

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

在具有.aspx扩展名的mvc应用程序中获取Current.Request.Url

我有一个ASP.NET MVC 3应用程序,我必须将带有.aspx扩展名的请求映射到另一个路由.我想要做的是在应用程序启动时获取当前请求URL.但问题是它运行正常,没有.aspx扩展名的所有网址,但在ex(http://example.com/Products/5/16/Eettafels.aspx)的网址中,它只显示http://example.com/

但是使用http://example.com/Products/5/16/Eettafels它会显示正确的路径..

所有代码都是一个简单的行:

string currentUrl = HttpContext.Current.Request.Url.ToString().ToLower();
Run Code Online (Sandbox Code Playgroud)

任何人都可以知道我做错了什么

c# asp.net-mvc

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

获取浏览器中显示的当前 URL

目前我正在尝试获取浏览器中显示的当前 URL。

如果我使用

Request.Path 
Run Code Online (Sandbox Code Playgroud)

我得到https://this.website.com:443/Default.aspx,这在技术上是正确的。

但是浏览器本身显示的 URL 是https://this.website.com/

使用任何请求选项仍将显示 Default.aspx。

我需要最终检测浏览器中的 url 是否为https://this.website.comhttp://this.website.com/Default.aspx,然后重定向到 Default.aspx(如果不存在)。

顺便说一句,更复杂的是我的 web.config 中的 https 重定向。

c# asp.net url request

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

新手 .net 问题 - 相当于 $_SESSION['SERVER_NAME'] 的变量

我对 .net 还是个新手......我试图找到打印 aspx.cs 文件当前正在执行的域名的变量。我来自 PHP 土地,它有 $_SERVER['SERVER_NAME'] 或 $_SERVER['HTTP_HOST']。这些变量的 .net 等效项是什么?

谢谢

.net http-host server-name

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