为什么我的 ASP.NET 核心 2 方法 return TwiML 不能?
Why can't my ASP.NET Core 2 method return TwiML?
我有一个 ASP.NET Core 2 应用程序,我正在尝试将对 Twilio 号码的呼叫转发到另一个号码。当我尝试 return TwiML
时,我收到一条错误消息:
"Non-invocable member 'TwiML' cannot be used like a method."
方法如下:
[HttpPost]
public TwiMLResult ForwardCall(string called)
{
var response = new VoiceResponse();
response.Dial(newNumber);
return TwiML(response);
}
错误发生在这里:
return TwiML(response);
我看到的所有代码示例都告诉我 return TwiML
这种方式,但由于某些原因,我无法做到。
问题是控制器没有继承自 TwilioController。一旦我的控制器继承自 TwilioController,错误就消失了。
因为 TwiML
只是 XML
,我会考虑返回一个 ContentResult
。
ContentResult
对象是一个ActionResult
,returns一个简单的字符串。它还支持设置将与响应一起返回的 Content-Type
:
[HttpPost]
public ContentResult ForwardCall(string called)
{
var response = new VoiceResponse();
response.Dial(newNumber);
return new ContentResult(TwiML(response), "text/xml");
}
可能更多 .net nuget 相关,但在 visual studio 识别 Twilio.Aspnet 命名空间之前我必须 uninstall/re-install twilio 包。
我有一个 ASP.NET Core 2 应用程序,我正在尝试将对 Twilio 号码的呼叫转发到另一个号码。当我尝试 return TwiML
时,我收到一条错误消息:
"Non-invocable member 'TwiML' cannot be used like a method."
方法如下:
[HttpPost]
public TwiMLResult ForwardCall(string called)
{
var response = new VoiceResponse();
response.Dial(newNumber);
return TwiML(response);
}
错误发生在这里:
return TwiML(response);
我看到的所有代码示例都告诉我 return TwiML
这种方式,但由于某些原因,我无法做到。
问题是控制器没有继承自 TwilioController。一旦我的控制器继承自 TwilioController,错误就消失了。
因为 TwiML
只是 XML
,我会考虑返回一个 ContentResult
。
ContentResult
对象是一个ActionResult
,returns一个简单的字符串。它还支持设置将与响应一起返回的 Content-Type
:
[HttpPost]
public ContentResult ForwardCall(string called)
{
var response = new VoiceResponse();
response.Dial(newNumber);
return new ContentResult(TwiML(response), "text/xml");
}
可能更多 .net nuget 相关,但在 visual studio 识别 Twilio.Aspnet 命名空间之前我必须 uninstall/re-install twilio 包。