SP13使用JS读取social feed 时的报错 SCRIPT438: Object doesn't support property or method 'get_context

在研究SharePoint 2013社交功能时,通过JavaScript读取social feed遇到SCRIPT438错误,原因是SocialFeedManager对象不支持'get_context'方法。通过覆盖此方法解决问题。此外,使用双斜杠而非单斜杠传递用户名以避免XML格式错误。分享成功运行的完整代码,以帮助遇到同样问题的开发者。
摘要由CSDN通过智能技术生成

最近研究SharePoint 2013的 social feature, 参照微软MSDN上的例子做一个是使用JS读取social feed的demo.

其中遇到几个问题,发出来和博友们共享。


1. 首先是运行到SP.UserProfiles.js的代码是报错:

SCRIPT438: Object doesn't support property or method 'get_context' 

我debug 了一下,发现报错的对象是 SocialFeedManager类型的,所以就覆盖了这个方法

 feedManager.get_context = function () { return clientContext };

结果果然没有报这个错了,估计是补丁问题,但是我貌似打了所有的补丁,很奇怪,好在问题解决了。


2. 微软的例子里面使用双斜杠来传递用户名

var targetUser = 'domain\\alias';

我自己自做聪明,认为应该是单斜杠  'domain\alias';, 就遇到了这个错误:

hexadecimal value 0x0B, is an invalid character. Line 1, position 1072

这里问题在于可能微软在将用户名拼接成xml的时候没有转义单斜杠,导致xml格式出错,解决办法是用双斜杠,这样就在拼接xml之前转义了单斜杠。


下面是我跑成功的完整代码,希望对遇到类似问题的博友有帮助:

<script src="/_layouts/15/SP.UserProfiles.js"></script>
&l
对不起,我犯了一个错误。在Gurobi中,正确的方法是使用`Model.optimize()`方法的`solutioncallback`参数来设置回调函数,而不是使用`setCallback()`方法。以下是修改后的代码: ```python import gurobipy as gp from gurobipy import GRB import numpy as np # 定义相关参数 n = ... # 变量y的维度 m = ... # 模型生成的解的数量 optime = ... # 优化目标中的常数项 pi = ... # 目标函数中的系数 normal_mean = ... # 约束中的常数项 # 创建模型 s1 = gp.Model("sp1") # 定义变量 y = {} for p in range(m): y[p] = {} for i in range(n): y[p][i] = s1.addVar(vtype=GRB.CONTINUOUS) # 设置目标函数 s1.setObjective(np.sum(pi[i] * y[p][i] for p in range(m) for i in range(n)), GRB.MAXIMIZE) # 添加约束 s1.addConstrs(np.sum(y[p][i] * normal_mean[i] for i in range(n)) + 80 - optime <= 0 for p in range(m)) # 定义回调函数来捕获可行解 feasible_solutions = [] def mycallback(model, where): if where == GRB.Callback.MIPSOL: x_sol = model.cbGetSolution(list(y[p][i] for p in range(m) for i in range(n))) feasible_solutions.append(x_sol) # 设置回调函数 s1.optimize(mycallback) # 打印所有可行解 for sol in feasible_solutions: print(sol) ``` 在这个修改后的代码中,我使用`s1.optimize(mycallback)`来设置回调函数。这样,在每次找到一个可行解,回调函数`mycallback`将被调用,并将可行解添加到`feasible_solutions`列表中。 请根据你的具体问题进行适当的修改,并根据需要进一步处理可行解。如果你仍然遇到问题,请提供更多的错误信息,以便我可以更好地帮助你。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值