小编Hoc*_*Lim的帖子

将JSF托管bean迁移到CDI托管bean

我打算将Web应用程序从使用JSF托管bean转换为使用CDI托管bean.我知道我需要在下面做:

  1. 在WEB-INF中添加一个空的beans.xml文件.
  2. 将所有JSF @ManagedBean替换为CDI @Named注释.
  3. 用CDI或OmniFaces范围注释替换所有JSF范围注释.
  4. 用CDI @Inject注释替换所有JSF @ManagedProperty.

是这一切都需要做吗?我需要注意哪些问题?

migration cdi jsf-2 managed-bean omnifaces

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

EF6-允许空字符串但不允许空值的注释

在EF6中,有没有允许空字符串但不允许为null的注释?

我已经尝试过[必填]。但是此注释不允许为空字符串或null。

[Required]
[MaxLength(80)]
public string ShortDescription { get; set; }
Run Code Online (Sandbox Code Playgroud)

entity-framework

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

如何在h:panelGrid中添加注释而不会导致它生成空TD

我发现如果我在panelgrid标签内添加注释,它将<td>为它生成一个空.我找到了关于这个问题的链接:https: //java.net/jira/browse/JAVASERVERFACES-1768.根据此链接,它不是一个错误,并标记为WONTFIX.在链接中,有人提供了这些解决方法,我想知道是否有比这些更好的解决方案:

  1. 如果您根本不想保留它们,请让Facelets忽略所有注释.有一个javax.faces.FACELETS_SKIP_COMMENTS开关web.xml.

  2. <h:panelGroup>如果要保留注释,请将注释移动到.

  3. 使用<ui:remove><!-- first column --></ui:remove>,您也可以忽略XML注释风格并提出更高级的东西.

facelets jsf-2

5
推荐指数
0
解决办法
813
查看次数

找不到System.Net.SecurityProtocolType.Tls12定义

我正在尝试将以下代码行添加到网站项目中的Global.asax文件中.

System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12;
Run Code Online (Sandbox Code Playgroud)

vs2012 IntelliSense显示存在Tls12定义.但构建是说定义不存在(参见屏幕截图).

屏幕截图

我已经尝试将System.Net.dll添加到项目的bin文件夹中,但构建仍然失败.知道我怎么能解决这个问题?

.net c# ssl tls1.2

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

使用Powershell替换文本文件中的扩展ascii字符

我需要在多个csv文件中的一个“”字符串中替换十六进制93字符。下面是我正在使用的代码。但是它不起作用,我认为它不起作用的原因是因为十六进制值大于7F(Dec 127)。我尝试了其他几种方法都没有用。任何帮助,将不胜感激。

$q1 = [String](0x93 -as [char])
Get-ChildItem ".\*.csv" -Recurse | ForEach {
(Get-Content $_ | ForEach  { $_.replace($q1, '""') }) |
     Set-Content $_
}
Run Code Online (Sandbox Code Playgroud)

注意:附件是我的测试文件的格式十六进制转储的图像。第一个字符是我需要执行替换操作的字符:在此处输入图片说明

powershell replace character-encoding

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

我们可以从构造函数中调用异步方法吗?

我需要从 mvc 应用程序调用第三方异步方法。此异步方法的名称是 ForceClient.QueryAsync。它来自一个开源项目:https ://github.com/developerforce/Force.com-Toolkit-for-NET/ 。

下面工作正常,当进程处于 mvc 的 View 阶段时, model.Opportunity 包含预期信息:

public async Task<ActionResult> MyController(string Id) {
    . . . .
    MyModel model = new MyModel();
    var client = new ForceClient(instanceUrl, accessToken, apiVersion);
    var qry = await client.QueryAsync<MyModel.SFOpportunity>(
            "SELECT Name, StageName FROM Opportunity where  Id='" + Id + "'");
    model.Opportunity = qry.Records.FirstOrDefault();
    . . . .
return View(viewName, myModel);
}
Run Code Online (Sandbox Code Playgroud)

但下面不起作用。当流程处于View阶段时,model.Opportunity为null。我做了一些调试,发现流程是这样的:

1)步骤1

2)步骤2

3)在View阶段。此时 model.Opportunity 为 null,我需要将其填充。

4)步骤3。

public async Task<ActionResult> MyController(string Id) {
    . . . …
Run Code Online (Sandbox Code Playgroud)

c#

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

最大宽度,宽度不长的文字与工作空间

我有一个带有td的表,其中包含一长串文本,没有任何空格。我想限制TD的宽度。但是,最大宽度(或宽度)不工作。

https://jsfiddle.net/gh6eru8p/

<tables>
  <tbody>
    <tr>
      <td>
        <label>Note:</label>
      </td>
      <td  style="max-width:30%">
1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
      </td>
    </tr>
  <tr>
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

html css

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

如何将 Type 参数限制在某个接口上

是否可以将 Type 参数限制为仅允许调用者传入实现某个接口的类类型?以下面为例:

public void RegisterProcessors(params Type[] types)
Run Code Online (Sandbox Code Playgroud)

现在,调用者可以将任何类类型传递给此方法。例如:

RegisterProcessors(typeof(string));  
Run Code Online (Sandbox Code Playgroud)

但我真正想要的是只允许调用者传入实现 IProcessor 接口的类型。那可能吗?像下面这样的东西,当然,下面在语法上是错误的

public void RegisterProcessors(params Type<IProcessor>[] types)
Run Code Online (Sandbox Code Playgroud)

c#

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